From 545c8c3d089e8372f7af6fc913fcee6fa82c1c51 Mon Sep 17 00:00:00 2001 From: foiv Date: Tue, 3 Sep 2024 20:45:31 +0300 Subject: [PATCH] Improve system monitoring blocks and home page --- blockly_unix_database.db | Bin 28672 -> 28672 bytes index.html | 3 +- public/blocks/dateBlock.js | 18 ++++- public/blocks/dfBlock.js | 47 ++++++++++++- public/blocks/hostnameBlock.js | 54 ++++++++++++++- public/blocks/psBlock.js | 62 +++++++++++++++-- public/blocks/uptimeBlock.js | 35 +++++++++- public/blocks/whoBlock.js | 52 ++++++++++++++- public/js/el.js | 90 +++++++++++++++++++++++++ public/js/en.js | 60 +++++++++++++---- public/styles.css | 10 ++- views/homePage.ejs | 118 ++++++++++++++------------------- 12 files changed, 443 insertions(+), 106 deletions(-) diff --git a/blockly_unix_database.db b/blockly_unix_database.db index ea9803143b78b888cd2798408dadd866e0ed9cbc..57b34b6a59e29e0747937b46a44fab0c078eed80 100644 GIT binary patch delta 283 zcmZp8z}WDBae_3X*hCp;MzM_vOZa(M_;?uj8~DESHSqCl78LlyTVKS&t}d$F$ZBk8 zZe(g~Ze(d{VQOlYmY-Rc=8&G7n3Rwgk@8VkE=;>2YYHSeho05~BlU{CaTIrMFpP6W6U}U0eV5w_htYBzjWoT+; zYEjAzv{Mso=jLv?N=6cYpXT4WSx{jmzmOoaIwOjUSSFv=w*)G@$-w`b z|2zLp{zsby4NmfNaxjZBf?Ufo`H{U6P<{~u|04dQ{G0fn0S%hOFTl^N%!uR@md%^| G{S*MFa8XbI delta 101 zcmZp8z}WDBae_3X=tLQ3M$wH4OZd5%`5GAb8~DESHEb4CDB|1PAlJgk#ms-2f&V@K zUH;RX1r7G{Pd=@02^4$8!2g>6JO882f(cjnCqJ@R0*Y;7;6KX0iT@c;^Ai5eoBaJ0 E0E|~6Qvd(} diff --git a/index.html b/index.html index 6c6d02d..3497948 100644 --- a/index.html +++ b/index.html @@ -365,8 +365,7 @@ { kind: 'block', type: 'findDuplicates' }, { kind: 'block', type: 'showUniqs' }, { kind: 'block', type: 'cut' }, - { kind: 'block', type: 'sed' }, - { kind: 'block', type: 'echo' } + { kind: 'block', type: 'sed' } ] }, { diff --git a/public/blocks/dateBlock.js b/public/blocks/dateBlock.js index da10ba4..f405941 100644 --- a/public/blocks/dateBlock.js +++ b/public/blocks/dateBlock.js @@ -1,17 +1,29 @@ var dateBlock = { type: 'date', - message0: '%{BKY_DATE}', + message0: '%{BKY_SYSTEM_DATE_COMMAND}', category: 'System Monitoring', unix_description: [ { - command: 'date' + desc: 'Display or set the system date and time', + utc_time: '-u' } ], + message1: '%{BKY_DATE_UTC_TIME}', + args1: [ + { + type: 'field_checkbox', + name: 'utc_time', + checked: false + } + ], + + extensions: ['integer_validation'], + style: 'System Monitoring', previousStatement: 'Action', nextStatement: 'Action', tooltip: '%{BKY_DATE_TOOLTIP}', - helpUrl: 'https://linux.die.net/man/1/date' + helpUrl: '%{BKY_DATE_HELPURL}' }; Blockly.defineBlocksWithJsonArray([dateBlock]); diff --git a/public/blocks/dfBlock.js b/public/blocks/dfBlock.js index 3226e82..792facc 100644 --- a/public/blocks/dfBlock.js +++ b/public/blocks/dfBlock.js @@ -1,17 +1,58 @@ var dfBlock = { type: 'df', message0: '%{BKY_DF}', - category: 'System Monitoring', + category: 'System Commands', unix_description: [ { - command: 'df' + desc: '-h', + show_fs_type: '-T', + show_total_blocks: '-B', + show_used_blocks: '-u', + show_available_blocks: '-a', + block_size: '-k', + target_fs: '-t' } ], + message1: '%{BKY_DF_SHOW_FS_TYPE}', + args1: [ + { + type: 'field_checkbox', + name: 'show_fs_type', + checked: false + } + ], + message2: '%{BKY_DF_SHOW_TOTAL_BLOCKS}', + args2: [ + { + type: 'field_checkbox', + name: 'show_total_blocks', + checked: false + } + ], + message3: '%{BKY_DF_SHOW_USED_BLOCKS}', + args3: [ + { + type: 'field_checkbox', + name: 'show_used_blocks', + checked: false + } + ], + message4: '%{BKY_DF_SHOW_AVAILABLE_BLOCKS}', + args4: [ + { + type: 'field_checkbox', + name: 'show_available_blocks', + checked: false + } + ], + + extensions: ['integer_validation'], + style: 'System Monitoring', previousStatement: 'Action', nextStatement: 'Action', tooltip: '%{BKY_DF_TOOLTIP}', - helpUrl: 'https://linux.die.net/man/1/df' + helpUrl: '%{BKY_DF_HELPURL}' }; Blockly.defineBlocksWithJsonArray([dfBlock]); diff --git a/public/blocks/hostnameBlock.js b/public/blocks/hostnameBlock.js index e262884..ccd6df7 100644 --- a/public/blocks/hostnameBlock.js +++ b/public/blocks/hostnameBlock.js @@ -1,17 +1,65 @@ var hostnameBlock = { type: 'hostname', - message0: '%{BKY_HOSTNAME}', + message0: '%{BKY_SYSTEM_HOSTNAME_COMMAND}', category: 'System Monitoring', unix_description: [ { - command: 'hostname' + desc: "Show or set the system's hostname", + show_hostname: '', + set_hostname: "-s'str'", + show_aliases: '-a', + show_ip: '-i', + show_fqdn: '-f' } ], + message1: '%{BKY_HOSTNAME_SHOW_HOSTNAME}', + args1: [ + { + type: 'field_checkbox', + name: 'show_hostname', + checked: false + } + ], + message2: '%{BKY_HOSTNAME_SET_HOSTNAME}', + args2: [ + { + type: 'field_input', + name: 'set_hostname', + text: 'Enter new hostname' + } + ], + message3: '%{BKY_HOSTNAME_SHOW_ALIASES}', + args3: [ + { + type: 'field_checkbox', + name: 'show_aliases', + checked: false + } + ], + message4: '%{BKY_HOSTNAME_SHOW_IP}', + args4: [ + { + type: 'field_checkbox', + name: 'show_ip', + checked: false + } + ], + message5: '%{BKY_HOSTNAME_SHOW_FQDN}', + args5: [ + { + type: 'field_checkbox', + name: 'show_fqdn', + checked: false + } + ], + + extensions: ['integer_validation'], + style: 'System Monitoring', previousStatement: 'Action', nextStatement: 'Action', tooltip: '%{BKY_HOSTNAME_TOOLTIP}', - helpUrl: 'https://linux.die.net/man/1/hostname' + helpUrl: '%{BKY_HOSTNAME_HELPURL}' }; Blockly.defineBlocksWithJsonArray([hostnameBlock]); diff --git a/public/blocks/psBlock.js b/public/blocks/psBlock.js index 02b5af2..2f20b24 100644 --- a/public/blocks/psBlock.js +++ b/public/blocks/psBlock.js @@ -1,19 +1,67 @@ var psBlock = { type: 'ps', - category: 'System Monitoring', - message0: 'ps', + message0: '%{BKY_PS}', + category: 'System Commands', unix_description: [ { - command: 'ps' + desc: '-e', + show_all_processes: '-e', + show_process_user: "-u'str'", + show_process_pid: "-p'str'", + format: '-o', + show_thread: '-L', + sort_by: '--sort', + filter_by: '--pid' } ], - args0: [], + message1: '%{BKY_PS_SHOW_ALL}', + args1: [ + { + type: 'field_checkbox', + name: 'show_all_processes', + checked: false // by default it's disabled + } + ], + message2: '%{BKY_PS_SHOW_USER}', + args2: [ + { + type: 'field_input', + name: 'show_process_user', + text: '' + } + ], + message3: '%{BKY_PS_SHOW_PID}', + args3: [ + { + type: 'field_input', + name: 'show_process_pid', + text: '' + } + ], + message4: '%{BKY_PS_FORMAT}', + args4: [ + { + type: 'field_input', + name: 'format', + text: '' + } + ], + message5: '%{BKY_PS_SHOW_THREAD}', + args5: [ + { + type: 'field_checkbox', + name: 'show_thread', + checked: false // by default it's disabled + } + ], + + extensions: ['integer_validation'], + style: 'System Monitoring', previousStatement: 'Action', nextStatement: 'Action', - tooltip: 'Εμφανίζει πληροφορίες για τις διεργασίες που εκτελούνται.', - helpUrl: 'https://linux.die.net/man/1/ps' + tooltip: '%{BKY_PS_TOOLTIP}', + helpUrl: '%{BKY_PS_HELPURL}' // URL to further information or documentation. }; Blockly.defineBlocksWithJsonArray([psBlock]); -// diff --git a/public/blocks/uptimeBlock.js b/public/blocks/uptimeBlock.js index eea96d6..b025a5a 100644 --- a/public/blocks/uptimeBlock.js +++ b/public/blocks/uptimeBlock.js @@ -4,14 +4,45 @@ var uptimeBlock = { category: 'System Monitoring', unix_description: [ { - command: 'uptime' + desc: 'Displays how long the system has been running, the number of users, and the system load averages.', + pretty: '-p', + since: '-s', + kernel_version: '-v', + help: '--help' } ], + message1: '%{BKY_UPTIME_PRETTY}', + args1: [ + { + type: 'field_checkbox', + name: 'pretty', + checked: false + } + ], + message2: '%{BKY_UPTIME_SINCE}', + args2: [ + { + type: 'field_checkbox', + name: 'since', + checked: false + } + ], + message3: '%{BKY_UPTIME_KERNEL_VERSION}', + args3: [ + { + type: 'field_checkbox', + name: 'kernel_version', + checked: false + } + ], + + extensions: ['integer_validation'], + style: 'System Monitoring', previousStatement: 'Action', nextStatement: 'Action', tooltip: '%{BKY_UPTIME_TOOLTIP}', - helpUrl: 'https://linux.die.net/man/1/uptime' + helpUrl: '%{BKY_UPTIME_HELPURL}' }; Blockly.defineBlocksWithJsonArray([uptimeBlock]); diff --git a/public/blocks/whoBlock.js b/public/blocks/whoBlock.js index 43ee2da..e377642 100644 --- a/public/blocks/whoBlock.js +++ b/public/blocks/whoBlock.js @@ -4,14 +4,62 @@ var whoBlock = { category: 'System Monitoring', unix_description: [ { - command: 'who' + desc: 'Display who is logged in and related information', + show_heading: '-H', + show_all: '-a', + show_users: '-u', + show_boot_time: '-b', + show_runlevel: '-r' } ], + message1: '%{BKY_WHO_SHOW_HEADING}', + args1: [ + { + type: 'field_checkbox', + name: 'show_heading', + checked: false + } + ], + message2: '%{BKY_WHO_SHOW_ALL}', + args2: [ + { + type: 'field_checkbox', + name: 'show_all', + checked: false + } + ], + message3: '%{BKY_WHO_SHOW_USERS}', + args3: [ + { + type: 'field_checkbox', + name: 'show_users', + checked: false + } + ], + message4: '%{BKY_WHO_SHOW_BOOT_TIME}', + args4: [ + { + type: 'field_checkbox', + name: 'show_boot_time', + checked: false + } + ], + message5: '%{BKY_WHO_SHOW_RUNLEVEL}', + args5: [ + { + type: 'field_checkbox', + name: 'show_runlevel', + checked: false + } + ], + + extensions: ['integer_validation'], + style: 'System Monitoring', previousStatement: 'Action', nextStatement: 'Action', tooltip: '%{BKY_WHO_TOOLTIP}', - helpUrl: 'https://linux.die.net/man/1/who' + helpUrl: '%{BKY_WHO_HELPURL}' }; Blockly.defineBlocksWithJsonArray([whoBlock]); diff --git a/public/js/el.js b/public/js/el.js index 6c26ac4..eaf1dc7 100644 --- a/public/js/el.js +++ b/public/js/el.js @@ -888,3 +888,93 @@ Blockly.Msg['PROCEDURES_HUE'] = '290'; Blockly.Msg['COLOUR_HUE'] = '20'; Blockly.Msg['VARIABLES_DYNAMIC_HUE'] = '310'; Blockly.Msg['CATVARIABLES'] = 'Μεταβλητές'; + +// df command +Blockly.Msg['DF'] = 'Χρήση χώρου δίσκου'; +Blockly.Msg['DF_SHOW_FS_TYPE'] = 'Εμφάνιση τύπου συστήματος αρχείων %1'; +Blockly.Msg['DF_SHOW_TOTAL_BLOCKS'] = 'Εμφάνιση συνολικού αριθμού blocks %1'; +Blockly.Msg['DF_SHOW_USED_BLOCKS'] = 'Εμφάνιση χρησιμοποιημένων blocks %1'; +Blockly.Msg['DF_SHOW_AVAILABLE_BLOCKS'] = 'Εμφάνιση διαθέσιμων blocks %1'; +Blockly.Msg['DF_TOOLTIP'] = + 'Εκτελεί την εντολή df για εμφάνιση πληροφοριών χρήσης χώρου δίσκου'; +Blockly.Msg['DF_HELPURL'] = 'https://man7.org/linux/man-pages/man1/df.1.html'; + +// uptime command +Blockly.Msg['UPTIME'] = 'Χρόνος λειτουργίας συστήματος'; +Blockly.Msg['UPTIME_PRETTY'] = 'Εμφάνιση χρόνου λειτουργίας σε όμορφη μορφή %1'; +Blockly.Msg['UPTIME_SINCE'] = + 'Εμφάνιση του χρόνου λειτουργίας από την εκκίνηση %1'; +Blockly.Msg['UPTIME_KERNEL_VERSION'] = 'Εμφάνιση της έκδοσης του πυρήνα %1'; +Blockly.Msg['UPTIME_TOOLTIP'] = + 'Εμφανίζει τον χρόνο λειτουργίας του συστήματος, τον αριθμό των χρηστών και τους μέσους όρους φορτίου'; +Blockly.Msg['UPTIME_HELPURL'] = + 'https://man7.org/linux/man-pages/man1/uptime.1.html'; + +// who command +Blockly.Msg['WHO'] = 'Εμφάνιση ποιοι χρήστες είναι συνδεδεμένοι'; +Blockly.Msg['WHO_SHOW_HEADING'] = 'Εμφάνιση πληροφοριών κεφαλίδας %1'; +Blockly.Msg['WHO_SHOW_ALL'] = 'Εμφάνιση όλων των πληροφοριών %1'; +Blockly.Msg['WHO_SHOW_USERS'] = 'Εμφάνιση διεργασιών χρηστών %1'; +Blockly.Msg['WHO_SHOW_BOOT_TIME'] = 'Εμφάνιση τελευταίου χρόνου εκκίνησης %1'; +Blockly.Msg['WHO_SHOW_RUNLEVEL'] = 'Εμφάνιση του τρέχοντος runlevel %1'; +Blockly.Msg['WHO_TOOLTIP'] = + 'Εμφανίζει ποιοι χρήστες είναι συνδεδεμένοι και σχετικές πληροφορίες συστήματος'; +Blockly.Msg['WHO_HELPURL'] = 'https://man7.org/linux/man-pages/man1/who.1.html'; + +// hostname command +Blockly.Msg['SYSTEM_HOSTNAME_COMMAND'] = 'Εμφάνιση του ονόματος του συστήματος'; +Blockly.Msg['HOSTNAME_SHOW_HOSTNAME'] = + 'Εμφάνιση του ονόματος του συστήματος %1'; +Blockly.Msg['HOSTNAME_SET_HOSTNAME'] = + 'Ορισμός του ονόματος του συστήματος σε %1'; +Blockly.Msg['HOSTNAME_SHOW_ALIASES'] = + 'Εμφάνιση ψευδωνύμων του ονόματος συστήματος %1'; +Blockly.Msg['HOSTNAME_SHOW_IP'] = + 'Εμφάνιση της IP διεύθυνσης που συνδέεται με το όνομα συστήματος %1'; +Blockly.Msg['HOSTNAME_SHOW_FQDN'] = + 'Εμφάνιση του πλήρως καταρτισμένου ονόματος τομέα (FQDN) %1'; +Blockly.Msg['HOSTNAME_TOOLTIP'] = + 'Εμφανίζει ή ορίζει το όνομα του συστήματος και σχετικές πληροφορίες'; +Blockly.Msg['HOSTNAME_HELPURL'] = + 'https://man7.org/linux/man-pages/man1/hostname.1.html'; + +// date command +Blockly.Msg['SYSTEM_DATE_COMMAND'] = + 'Εμφάνιση της τρέχουσας ημερομηνίας και ώρας'; +Blockly.Msg['DATE_UTC_TIME'] = 'Εμφάνιση ώρας σε UTC %1'; +Blockly.Msg['DATE_TOOLTIP'] = + 'Εμφανίζει ή ορίζει την ημερομηνία και ώρα του συστήματος'; +Blockly.Msg['DATE_HELPURL'] = + 'https://man7.org/linux/man-pages/man1/date.1.html'; + +// kill command +Blockly.Msg['KILL'] = 'Τερματισμός διεργασίας'; +Blockly.Msg['KILL_BLOCK'] = 'τερματισμός διεργασίας %1'; +Blockly.Msg['KILL_TOOLTIP'] = 'Τερματισμός μιας διεργασίας με το PID της'; +Blockly.Msg['KILL_HELPURL'] = + 'https://man7.org/linux/man-pages/man1/kill.1.html'; + +// echo command +Blockly.Msg['ECHO'] = 'Εκτύπωση μηνύματος'; +Blockly.Msg['ECHO_BLOCK'] = 'εκτύπωση μηνύματος %1'; +Blockly.Msg['ECHO_TOOLTIP'] = 'Εκτυπώνει ένα μήνυμα στο τερματικό'; +Blockly.Msg['ECHO_HELPURL'] = + 'https://man7.org/linux/man-pages/man1/echo.1.html'; + +// sleep command +Blockly.Msg['SLEEP'] = 'Αναμονή για διάρκεια'; +Blockly.Msg['SLEEP_BLOCK'] = 'αναμονή για %1 δευτερόλεπτα'; +Blockly.Msg['SLEEP_TOOLTIP'] = 'Παύση για καθορισμένο χρονικό διάστημα'; +Blockly.Msg['SLEEP_HELPURL'] = + 'https://man7.org/linux/man-pages/man1/sleep.1.html'; + +// ps command +Blockly.Msg['PS'] = 'Κατάσταση διεργασίας'; +Blockly.Msg['PS_SHOW_ALL'] = 'Εμφάνιση όλων των διεργασιών %1'; +Blockly.Msg['PS_SHOW_USER'] = 'Εμφάνιση διεργασιών για χρήστη %1'; +Blockly.Msg['PS_SHOW_PID'] = 'Εμφάνιση διεργασίας με PID %1'; +Blockly.Msg['PS_FORMAT'] = 'Μορφή εξόδου %1'; +Blockly.Msg['PS_SHOW_THREAD'] = 'Εμφάνιση νημάτων %1'; +Blockly.Msg['PS_TOOLTIP'] = + 'Εκτελεί την εντολή ps για εμφάνιση πληροφοριών διεργασίας'; +Blockly.Msg['PS_HELPURL'] = 'https://man7.org/linux/man-pages/man1/ps.1.html'; diff --git a/public/js/en.js b/public/js/en.js index 0bf4cd1..1348f09 100644 --- a/public/js/en.js +++ b/public/js/en.js @@ -864,35 +864,54 @@ Blockly.Msg['VARIABLES_DYNAMIC_HUE'] = '310'; Blockly.Msg['CATVARIABLES'] = 'Variables'; // df command -Blockly.Msg['DF'] = 'Disk free space'; -Blockly.Msg['DF_BLOCK'] = 'disk free space %1'; -Blockly.Msg['DF_TOOLTIP'] = 'Display free disk space for filesystems'; +Blockly.Msg['DF'] = 'Disk space usage'; +Blockly.Msg['DF_SHOW_FS_TYPE'] = 'Show file system type %1'; +Blockly.Msg['DF_SHOW_TOTAL_BLOCKS'] = 'Show total block count %1'; +Blockly.Msg['DF_SHOW_USED_BLOCKS'] = 'Show used blocks %1'; +Blockly.Msg['DF_SHOW_AVAILABLE_BLOCKS'] = 'Show available blocks %1'; +Blockly.Msg['DF_TOOLTIP'] = + 'Execute the df command to display disk space usage information'; Blockly.Msg['DF_HELPURL'] = 'https://man7.org/linux/man-pages/man1/df.1.html'; // uptime command Blockly.Msg['UPTIME'] = 'System uptime'; -Blockly.Msg['UPTIME_BLOCK'] = 'system uptime %1'; -Blockly.Msg['UPTIME_TOOLTIP'] = 'Show how long the system has been running'; +Blockly.Msg['UPTIME_PRETTY'] = 'Display uptime in a pretty format %1'; +Blockly.Msg['UPTIME_SINCE'] = + 'Show how long the system has been running since boot %1'; +Blockly.Msg['UPTIME_KERNEL_VERSION'] = 'Display the kernel version %1'; +Blockly.Msg['UPTIME_TOOLTIP'] = + 'Displays system uptime, number of users, and load averages'; Blockly.Msg['UPTIME_HELPURL'] = 'https://man7.org/linux/man-pages/man1/uptime.1.html'; // who command -Blockly.Msg['WHO'] = 'Who is logged in'; -Blockly.Msg['WHO_BLOCK'] = 'who is logged in %1'; -Blockly.Msg['WHO_TOOLTIP'] = 'Show who is logged in to the system'; +Blockly.Msg['WHO'] = 'Display who is logged in'; +Blockly.Msg['WHO_SHOW_HEADING'] = 'Show heading information %1'; +Blockly.Msg['WHO_SHOW_ALL'] = 'Show all information %1'; +Blockly.Msg['WHO_SHOW_USERS'] = 'Show user processes %1'; +Blockly.Msg['WHO_SHOW_BOOT_TIME'] = 'Show last boot time %1'; +Blockly.Msg['WHO_SHOW_RUNLEVEL'] = 'Show current runlevel %1'; +Blockly.Msg['WHO_TOOLTIP'] = + 'Displays who is logged in and related system information'; Blockly.Msg['WHO_HELPURL'] = 'https://man7.org/linux/man-pages/man1/who.1.html'; // hostname command -Blockly.Msg['HOSTNAME'] = 'System hostname'; -Blockly.Msg['HOSTNAME_BLOCK'] = 'system hostname %1'; -Blockly.Msg['HOSTNAME_TOOLTIP'] = 'Show or set the system hostname'; +Blockly.Msg['SYSTEM_HOSTNAME_COMMAND'] = 'Show the hostname of the system'; +Blockly.Msg['HOSTNAME_SHOW_HOSTNAME'] = "Show the system's hostname %1"; +Blockly.Msg['HOSTNAME_SET_HOSTNAME'] = "Set the system's hostname to %1"; +Blockly.Msg['HOSTNAME_SHOW_ALIASES'] = 'Show hostname aliases %1'; +Blockly.Msg['HOSTNAME_SHOW_IP'] = 'Show IP address associated with hostname %1'; +Blockly.Msg['HOSTNAME_SHOW_FQDN'] = + 'Show fully qualified domain name (FQDN) %1'; +Blockly.Msg['HOSTNAME_TOOLTIP'] = + 'Displays or sets the system hostname and related information'; Blockly.Msg['HOSTNAME_HELPURL'] = 'https://man7.org/linux/man-pages/man1/hostname.1.html'; // date command -Blockly.Msg['DATE'] = 'Current date and time'; -Blockly.Msg['DATE_BLOCK'] = 'current date and time %1'; -Blockly.Msg['DATE_TOOLTIP'] = 'Display or set the system date and time'; +Blockly.Msg['SYSTEM_DATE_COMMAND'] = 'Display the current date and time'; +Blockly.Msg['DATE_UTC_TIME'] = 'Display time in UTC %1'; +Blockly.Msg['DATE_TOOLTIP'] = 'Displays or sets the system date and time'; Blockly.Msg['DATE_HELPURL'] = 'https://man7.org/linux/man-pages/man1/date.1.html'; @@ -916,3 +935,16 @@ Blockly.Msg['SLEEP_BLOCK'] = 'sleep for %1 seconds'; Blockly.Msg['SLEEP_TOOLTIP'] = 'Pause for a specified amount of time'; Blockly.Msg['SLEEP_HELPURL'] = 'https://man7.org/linux/man-pages/man1/sleep.1.html'; + +// ps command +Blockly.Msg['PS'] = 'Process status'; +Blockly.Msg['PS_SHOW_ALL'] = 'Show all processes %1'; +Blockly.Msg['PS_SHOW_USER'] = 'Show processes for user %1'; +Blockly.Msg['PS_SHOW_PID'] = 'Show process by PID %1'; +Blockly.Msg['PS_FORMAT'] = 'Output format %1'; +Blockly.Msg['PS_SHOW_THREAD'] = 'Show threads %1'; +Blockly.Msg['PS_TOOLTIP'] = + 'Execute the ps command to display process information'; +Blockly.Msg['PS_HELPURL'] = 'https://man7.org/linux/man-pages/man1/ps.1.html'; + +// ssh command diff --git a/public/styles.css b/public/styles.css index 72daee8..559cdd6 100644 --- a/public/styles.css +++ b/public/styles.css @@ -110,7 +110,15 @@ body { } #resetButton:hover { - background-color: rgb(255, 164, 52); + background-color: rgb(243, 155, 48); +} + +#saveButton { + background-color: rgb(123, 166, 230); +} + +#saveButton:hover { + background-color: rgb(44, 123, 197); } /* Navbar */ diff --git a/views/homePage.ejs b/views/homePage.ejs index 39cdf85..4897017 100644 --- a/views/homePage.ejs +++ b/views/homePage.ejs @@ -69,12 +69,7 @@
@@ -94,8 +89,8 @@
-

Powerful coding, block by block

-

Blockly is a visual programming editor by Google that uses drag-and-drop blocks. It’s the engine that powers the most popular coding education programs world wide.

+

Build complex pipelines, block by block

+

This platform allows you to construct powerful data processing pipelines visually. By dragging and dropping blocks, you can easily create Unix-based workflows for your data processing needs.

@@ -119,7 +114,7 @@
-

Blockly for Web

+

Blockly for unix in Web

@@ -163,7 +158,7 @@

Why Blockly Unix


-

Blockly is the preferred choice for platforms aiming to deliver versatile and intuitive programming experiences

+

Blockly Unix is the perfect starting point for those looking to learn Unix. It combines the power of Unix tools with an intuitive, block-based interface, making it easier than ever to grasp the fundamentals of Unix while building real-world data processing pipelines.



@@ -174,7 +169,7 @@ Lorem Ipsum

Interactive Tutorials

-

Learn and get started quickly with interactive tutorials and guided walkthroughs.

+

Learn and get started quickly with interactive tutorials.

@@ -224,8 +219,8 @@

- If you are a teacher or student interested in block-based coding, you should check out a lesson through an educational product built on Blockly, such as CS First, Code.org, or Scratch. -

+ Whether you are a student, educator, or professional interested in learning Unix, Blockly Unix offers an intuitive, block-based approach to mastering Unix fundamentals. Blockly Unix offers an engaging way to explore the fundamentals of Unix. This platform is perfect for educational environments, allowing students to develop practical skills while building real Unix-based pipelines. +

@@ -263,76 +258,61 @@ - -
-
- - - - + +