Dimensione: 10268
Commento:
|
← Versione 89 del 25/11/2024 03.08.00 ⇥
Dimensione: 14002
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 1: | Linea 1: |
## page was renamed from GestioneDisco | ## page was renamed from jeremie2/Prove3 |
Linea 3: | Linea 3: |
#LANGUAGE it | #language it |
Linea 6: | Linea 6: |
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?f=46&t=221642")>> |
<<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=657114"; rilasci="24.04")>> |
Linea 11: | Linea 10: |
Questa guida è un'introduzione alla terminologia usata sui sistemi Linux per identificare i dispositivi di memoria, le partizioni e i loro formati, e per spiegare in che modo vengano utilizzate le partizioni per installare il sistema operativo attraverso il partizionamento. = Dispositivi di memoria e partizioni = I dispositivi di memoria vengono identificati come /dev/sda, /dev/sdb, /dev/sdc, ecc.. Le '''partizioni''', aree delimitata e ben definite del disco in cui vengono memorizzati dati, vengono identificate aggiungendo un numero alla sigla del dispositivo.<<BR>>Ad esempio se sul proprio pc è presente un unico hard disk, esso sarà individuato come '''/dev/sda''' e le partizioni al suo interno come '''/dev/sda1''', '''/dev/sda2''', ecc.. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/note.png,,center)>> ||<style="padding:0.5em; border:none;">''In precedenza esisteva la distinzione fra dispositivi IDE (PATA) riconosciuti come /dev/hdX, e dispositivi SATA, SCSI, USB riconosciuti come /dev/sdX.''|| = Tabella delle partizioni GPT e MBR = Con l'introduzione dello [[Installazione/UEFI|UEFI]] (Bios di nuova generazione), lo standard per la gestione delle partizioni di un disco fisso è [[http://it.wikipedia.org/wiki/GUID_Partition_Table|GPT]] (GUID Partition Table), che sostituisce l'ormai obsoleto [[http://it.wikipedia.org/wiki/Master_boot_record|MBR]] (Master Boot Record).<<BR>> La differenza principale dal punto di vista delle partizioni è che con il nuovo standard viene superato il limite delle 4 partizioni primarie e il limite dei 2 Terabyte per partizione. In definitiva su sistemi '''GPT''' sono presenti solo '''partizioni primarie'''. * '''Partizioni primarie ed estese'''<<BR>>Nei vecchi sistemi con '''MBR''' un disco fisso può avere un massimo di 4 '''partizioni primarie''', numerate da uno a quattro e precedute dal nome del disco cui appartengono. Per esempio, su un disco fisso riconosciuto come '''sda''' possono essere presenti le partizioni primarie '''sda1''', '''sda2''', '''sda3''', '''sda4'''.<<BR>>Una delle quattro partizioni primarie può essere usata come '''partizione estesa'''. Anziché contenere file sarà utilizzata per contenere partizioni logiche. * '''Partizioni logiche'''<<BR>>Vengono utilizzate come le partizioni primarie, dalle quali differiscono per il fatto che sono contenute tutte dentro una partizione primaria estesa e le loro descrizioni non si trovano nell'MBR. Le partizioni logiche vengono sempre numerate da 5 in su '''/dev/sda5''', '''/dev/sda5''', ecc.. = Formato delle partizioni = Esistono diversi tipi di formato per le partizioni di un disco. * '''In ambiente Linux'''<<BR>>Il formato '''ext4''' è il formato predefinito su Ubuntu. In alternativa possono essere utilizzati i file system '''ext3''', '''ext2''', '''ReiserFS''' e '''Btrfs'''. Quest'ultimo però nonostante le alte prestazioni è ancora ritenuto sperimentale. * '''In ambiente Windows'''<<BR>>I formati predefiniti sono '''NTFS''' e '''FAT32'''. È bene conoscere anche questi ultimi due, in quanto non è raro trovare un sistema Linux in dual boot con Windows. Per '''NTFS''' e '''FAT32''' non è possibile da '''Ubuntu''' cambiare i permessi dei file. Nel caso si usufruisca del ''dual boot'', è consigliato creare una partizione per l'archiviazione e scambio di dati fra i due sistemi in formato NTFS, più moderno di FAT32. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/note.png,,center)>> ||<style="padding:0.5em; border:none;">''Il formato '''ext3/ext4''' non viene riconosciuto da Windows se non tramite l'uso di [[Hardware/DispositiviPartizioni/Ext2FSD|adeguate applicazioni]].''|| = Utilizzo delle partizioni = Vengono qui elencate le partizioni necessarie per l'installazione di Ubuntu sia su computer dotati di '''UEFI''', sia su computer dotati di '''BIOS''' tradizionale. ||<tablestyle="width:80%" bgcolor="#cccccc":>'''Partizionamento GPT - UEFI'''||<style="border:none; "10%>||<bgcolor="#cccccc":>'''Partizionamento MBR - BIOS'''|| ||Partizione di avvio '''EFI''' ||<style="border:none; ">||Partizione per area di '''swap''' || ||Partizione per area di '''swap''' ||<style="border:none; ">||Partizione per il Filesystem "'''/'''"|| ||Partizione per il Filesystem "'''/'''" ||<style="border:none; ">||<style="border:none; "> || * '''swap'''<<BR>>Per [[Hardware/DispositiviPartizioni/SwapDomandeFrequenti|swap]] si intende un'area di appoggio alla memoria RAM che utilizza un formato a se stante '''linux-swap'''.<<BR>>Nei casi di ''multiboot'', cioè con più sistemi Linux installati, '''basta un unica area di swap''' che verrà utilizata di volta in volta dal sistema in uso.<<BR>>In caso di particolari necessità l'area di swap può essere omessa, tuttavia per un utilizzo standard è consigliabile utilizzarla. * '''EFI'''<<BR>>È richiesta dai Bios di nuova generazione [[Installazione/UEFI|UEFI]]. Si tratta di un'area di avvio in formato '''fat32''' collocata a seconda dei casi: * nella '''prima partizione''' /dev/sda1; * nella '''seconda partizione''' /dev/sda2 se nella /dev/sda1 è presente la partizione nascosta di ripristino di Windows. * '''Filesystem "/"'''<<BR>>Il [[AmministrazioneSistema/Filesystem|file system]] comunemente indicato con il simbolo "'''/'''" è l'area che accoglie il sistema operativo in formato '''ext4''' (vedere [[#Formato_delle_partizioni|formati alternativi]]).<<BR>>Il filesystem può essere suddiviso in modo tale che ogni singola directory possa essere destinata ad una partizione a se stante. Perticolarmente comune è il caso in cui la directory [[AmministrazioneSistema/Filesystem#A.2Fhome|/home]] viene assegnata ([[Hardware/DispositiviPartizioni/PartizionamentoManuale#Esempio_3_-_home_separata|vedere esempio]]) ad una partizone a se per fungere da partizone dati e preservare i dati personali e impostazioni dei software in successive reinstallazioni del sistema. = Esempi pratici = == Sistemi con MBR == In generale se si dispone di un computer con lo standard '''MBR''', per accogliere il sistema potranno essere indistintamente utilizzate partizioni '''primarie''' e '''logiche'''.<<BR>> ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">L'importante è di rispettare il '''limite delle 4 partizioni primarie'''. Se si sa già che quattro partizioni primarie non saranno sufficienti, una di esse dovrà essere impostata come partizione estesa, in modo da creare al suo interno tutte le partizioni logiche di cui si necessita.|| Ad esempio un disco con Windows e Ubuntu potrebbe avere tutte partizioni primarie (esempio di output non completo del comando '''`sudo fdisk -l`'''): |
'''Helix''' è un editor di testo modale utilizzabile nel [[AmministrazioneSistema/Terminale|terminale]] simile a '''Vim''' ma con la caratteristica particolare di ridurre al minimo eventuali configurazioni per avere da subito un editor con una buona impostazione di default e ottime funzionalità a portata di mano. Nonostante '''Helix''' possa semplificare la vita rispetto a editor come '''Vim''', '''!NeoVim''', '''Emacs''', ecc.. essendo un software evoluto per l'editazione di testi, richiede comunque un certo impegno per impararne l'utilizzo.<<BR>> In questa guida vengono giusto introdotte alcune nozioni. Per approfondimenti si rimanda all'ottima [[https://docs.helix-editor.com/|documentazione]] ufficiale ed è inoltre consigliabile l'avvio di '''Helix''' in modalità [[https://docs.helix-editor.com/usage.html|tutor]], una guida interattiva passo passo particolarmente utile per chi stia utilizzando per la prima volta un editor modale. {{{#!wiki tip Per l'installazione dei ''Language Server Protocol'' ('''LSP''') consultare la [[Ufficio/EditorDiTesto/Helix/Lsp|seguente pagina]]. }}} = Installazione = Installare il pacchetto [[AmministrazioneSistema/InstallareProgrammi/PacchettiSnap|snap]] digitando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ sudo snap install helix --classic }}} == Da pacchetto .deb == In alternativa '''Helix''' può essere installato in formato `.deb` da un [[Repository|repository]] esterno. 0. Aggiungere la nuova sorgente software digitando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ sudo add-apt-repository ppa:maveonair/helix-editor }}} 0. Installare '''Helix''' digitando:{{{ sudo apt install helix }}} = Avvio e chiusura = Comandi di avvio da '''terminale''': ||<:> '''Comando''' ||<:> '''Descrizione''' || || `hx` || Apre l'editor. || || `helix` || Versione estesa del comando precedente. || || `hx percorso/file` || Apre direttaemtne un file all'interno di Helix.|| {{{#!wiki tip In alternativa per l'apertura dei file è possibile sfruttare il [[#file_picker|file picker]] o il comando [[#open|:open]]. }}} Questi i comandi da '''editor''' di chiusura da digitare in modalità '''normale''': ||<:> '''Comando''' ||<:> '''Descrizione''' || || `:q` || Chiude la sessione di Helix. || || `:q!` || Chiude la sessione senza salvare eventuali modifiche.|| || `:wq` || Salva le modifiche e chiude la sessione. || = Modalità = Trattandosi di un editor modale, per ogni tipologia di azione è prevista una modalità che deve essere attivata. All'apertura di un file '''Helix''' sarà in modalità '''normale''', cioè una modalità che permette di muoversi attraverso il testo e applicare modifiche come spostare o copia/incollare il testo stesso. Per poter inserire caratteri sarà necessario passare alla modalità '''inserimento''' tramite il tasto '''i'''. Con il tasto '''Esc''' si ritornerà sempre alla modalità '''normale'''. Niente esclude che a proprio piacimento l'utente possa impostare scorciatoie da tastiera che permettano di sfruttare azioni non previste nella modalità originaria. Ad esempio è possibile attivare [[#config|scorciatoie da tastiera]] che permettano in modalità '''inserimento''' di spostarsi velocemente fra le righe del testo. {{{#!wiki note Da notare che mouse e touchpad continueranno a funzionare come di consueto e potranno essere utilizzati per selezionare del testo e incollarlo tramite clic centrale o tap a tre dita. }}} Segue un elenco con alcune modalità: ||<:> '''Modalità''' ||<:> '''Tasti''' ||<:> '''Descrizione''' || || '''Normale''' ||<:> '''Esc''' || Modalità predefinita nella quale è possibile scorrere, selezionare, copiare, incollare testo e altro. Si ritorna ad essa premendo Esc. || || '''Inserimento''' ||<:> '''i''' || Inserimento. || || ||<:> '''c''' || Inserimento cancellando il testo selezionato. || || ||<:> '''o''' || Inserimento a capo. || || ||<:> '''I''' || Inserimento a inizio riga. || || ||<:> '''A''' || Inserimento a fine riga. || || '''Selezione''' ||<:> '''v''' || I tasti per muoversi attraverso il testo faranno si che il testo venga selezionato.|| || '''Ricerca''' ||<:> '''s''' || Da attivare dopo aver selezionato del testo. Permette la ricerca di parole/caratteri all'interno del testo selezionato.|| = Prompt dei comandi = Premendo in modalità '''normale''' il tasto relativo ai due punti ''':''' si aprirà in basso il prompt dei comandi e poco più sopra un lungo elenco di comandi disponibili. Tramite il tasto '''tab''' è possibile scorrere e selezionare la funzionalità desiderata. Per non dover premere il tasto '''tab''' infinite volte, sarà sufficiente digitare le prime lettere di un comando per attivare l'auto completamento.<<BR>> L'elenco dei comandi eseguiti in precedenza sarà consultabile premendo il tasto '''freccia su ↑'''. Segue un breve elenco dei principali comandi. <<Anchor(open)>> ||<:> '''Comando''' ||<:> '''In breve''' ||<:> '''Dscrizione''' || || `:quit` || `:q` || Chiudi Elix. || || `:open` || `:o` || Apri file. || || `:new` || `:n` || Apri un nuovo file.|| || `:buffer-next` || `:bn` || Passa al successivo file aperto.|| || `:buffer-close` || `:bc` || Chiudi il file corrente. || || `:buffer-close-others`|| `:bco` || Chiudi gli altri file. || || `:buffer-close-all` || `:bca` || Chiudi tutti i file. || || `:theme` || || Seleziona tema. || || `:config-open` || || Apri il `config.toml` || || `:config-reload`|| || Ricarica la configurazione.|| || `:run-shell-command` || `:sh` || Esegui comandi da shell (potrebbe non funzionare per tutti i comandi) || || `:lsp-stop` || || Ferma il ''language server protocol'' || || `:lsp-restart`|| || Riavvia il ''language server protocol''|| = Temi = È possibile testare una vasta gamma di temi presenti di default in '''Helix'''. 0. In modalità '''normale''' premere ''':theme''' e quindi premere '''spazio''' per aprire la lista dei temi. 0. Scorrere i temi tramite tasto '''tab'''. Immediatamente verranno applicati. 0. Premere '''invio''' per utilizzare uno dei temi. Per rendere un tema predefinito: 0. se assente creare il file `~/.config/helix/config.toml`. 0. Supponendo di voler utilizzare il tema `catppuccin_frappe`, nel file dovrà essere inserita la stringa:{{{ theme = "catppuccin_frappe" }}} 0. Salvare e chiudere il file di configurazione. = Muoversi attraverso il testo = Sebbene in modalità '''normale''' sia possibile spostarsi fra i caratteri con i tasti '''freccia''', il modo principale è attraverso i tasti '''h''', '''j''', '''k''', '''l''', non a caso la posizione base delle dita della mano destra nell'utilizzo corretto della tastiera. ||<:> '''Tasto''' ||<:> '''Equivalente''' ||<:> '''Sposta il cursore''' || ||<:> '''h''' ||<:> '''←''' || a sinistra|| ||<:> '''j''' ||<:> '''↓''' || giù || ||<:> '''k''' ||<:> '''↑''' || su || ||<:> '''l''' ||<:> '''→''' || a destra || È possibile velocizzare gli spostamenti saltando di parola in parola selezionandole: ||<:> '''Tasto''' ||<:> '''Caratteri selezionati''' || ||<:> '''w''' || In avanti fino alla prossima parola esclusa. || ||<:> '''e''' || Avanti fino all'ultimo carattere della parola corrente.|| ||<:> '''b''' || Indietro fino all'inizio della parola. || Attraverso la funzione '''Goto''' il cursore può eseguire i seguenti spostamenti: ||<:> '''Tasti''' ||<:> '''Spostamento cursore''' || ||<:> '''g s''' || Primo carattere riga corrente.|| ||<:> '''g h''' || Inizio riga. || ||<:> '''g l''' || Fine riga. || ||<:> '''g 8 g''' || Riga numero 8. (Sostituire numero riga a proprio piacimento) || ||<:> '''g g''' || Inizio file || ||<:> '''g e''' || Fine file || <<Anchor(copia_incolla)>> = Copia/incolla = {{{#!wiki important Nel caso non dovesse funzionare il copia/incolla da finestre esterne, assicurarsi di aver installato il pacchetto [[apt://wl-clipboard|wl-clipboard]]. }}} Ricordando che '''Helix''' è comunque in grado di incollare del testo selezionato tramite clic centrale del mouse o tap a tre dita sul touchpad, viene qui mostrata una lista di comandi per il copia/incolla in modalità '''normale''': ||<:> '''Tasti''' ||<:> '''Spostamento cursore''' || ||<:> '''y''' || Copia testo selezionato da incollare sul medesimo file. || ||<:> '''spazio y''' || Copia testo da incollare su altro file. || ||<:> '''p''' || Incolla dopo il cursore il testo copiato sul medesimo file. || ||<:> '''shift p''' || Incolla prima del cursore il testo copiato sul medesimo file. || ||<:> '''spazio p''' || Incolla dopo il cursore il testo copiato da altro file. || ||<:> '''spazio shift p''' || Incolla prima del cursore il testo copiato da altro file.|| = Selezione multi linea = 0. È possibile procedere in due modi: * In modalità '''normale''' ripetendo la combinazione '''shift c''' il cursore verrà moltiplicato su una linea verticale. * Dopo aver selezionato del testo, passando alla modalità di ricerca (tasto '''s''') è possibile digitare la parola da ricercare e quindi premere '''invio'''. {{{#!wiki tip Per selezionare tutto il testo in modalità '''normale''' digitare il tasto percentuale '''%'''. }}} = Annullare/ripetere azione = In modalità '''normale''': || '''u''' || annulla azione || || '''shift u''' || ripete azione || = Elenchi scorciatoie = Come si può intuire una delle maggiori difficoltà nell'utilizzo di un editor di testo di questo genere sta nel memorizzare una lunga lista di scorciatoie da tastiera. Tuttavia '''Helix''' mette a disposizione per molte delle sue funzionalità una comoda finestra con relativo elenco di scorciatoie ogni volta che in modalità '''normale''' la funzionalità viene richiamata attraverso relativo tasto di attivazione. <<Anchor(file_picker)>> == Space - tasto: spazio == In basso a destra si aprirà una finestra con svariate funzionalità. Per citarne alcune: * '''f''' e '''F''' aprono il '''file picker''', comodo e pratico per aprire file; * '''b''' per invocare il '''buffer picker''' ossia tutti i file aperti nell'attuale sessione; {{{#!wiki tip Sia per il '''file''' che per il '''buffer picker''', se il terminale è aperto a schermo intero, oltre all'elenco dei file sarà visibile anche un'anteprima del file selezionato. }}} * '''w''' invoca la lista comandi per suddividere verticalmente od orizzontalmente una finestra; * Vengono elencati i [[#copia_incolla|già citati]] comandi '''y''' e '''p''' per il copia/incolla; * Il comando '''k''' per richiamare la documentazione ufficiale inerente al linguaggio in utilizzo. == Match - tasto: m == Funzionalità utile a gestire parentesi e virgolette per: * inserire parentesi intorno al testo selezionato, ad esempio: '''m s (''' * selezionare il testo interno alle parentesi: '''m i m''' * sostituire parentesi intorno a un testo, ad es. [] con {}: '''m r [ {''' * far saltare il cursore fra la parentesi di apertura e di chiusura: '''m m''' A proposito di parentesi, pur non essendo parte della funzione '''match''', merita una menzione il comando '''alt o'''. Ogni volta che viene premuto espande la selezione del testo fino alle virgolette o parentesi più esterne. <<Anchor(config)>> = File di configurazione = Per adattare '''Helix''' alle proprie esigenze è possibile creare ed editare il file `~/.config/helix/config.toml`, caratterizzato da specifiche sezioni come ad esempio '''[keys.normal]''', '''[keys.insert]''', ecc.. {{{#!wiki tip Il capitolo [[https://docs.helix-editor.com/keymap.html|Keymap]] della documentazione ufficiale mostra i comandi associati alle scorciatoie da tastiera, molto utile per poter associare un comando a una scorciatoia da tastiera che faccia al proprio caso. Il capitolo [[https://docs.helix-editor.com/configuration.html|Configuration]] entra maggiormente nel dettaglio. }}} Le righe che iniziano col carattere '''#''' sono commenti. |
Linea 67: | Linea 216: |
/dev/sda1 HPFS/NTFS (n.d.r. utilizzata da Windows) /dev/sda2 Linux swap / Solaris (n.d.r. utilizzata dalla swap) /dev/sda3 Linux (n.d.r. utilizzata da Ubuntu) }}} Come si vede dalla /dev/sda1 alla /dev/sda3 vengono utilizzate tutte partizioni primarie.<<BR>> Oppure una disposizione alternativa potrebbero essere di questo tipo: {{{ /dev/sda1 HPFS/NTFS (n.d.r. utilizzata da Windows) /dev/sda2 HPFS/NTFS (n.d.r. utilizzata come partizione dati) /dev/sda3 Linux swap / Solaris (n.d.r. utilizzata dalla swap) /dev/sda4 Esteso (partizione estesa) /dev/sda5 Linux (n.d.r. utilizzata dalla /home di Ubuntu) /dev/sda6 Linux (n.d.r. utilizzata per / di Ubuntu) }}} Essendo le prime tre partizioni primarie già utilizzate rispettivamente da Windows, partizione dati e area di swap, la /dev/sda4 è stata creata come partizione estesa nella quale sono state create due partizioni logiche: /dev/sda5 per la `/home` di Ubuntu e /dev/sda6 per il filesystem "/". == Sistemi con GPT == Se si dispone di computer con UEFI e quindi con il sistema di partizionamento '''GPT''', le partizioni saranno tutte viste come primarie. Se si creano partizioni su di un disco vuoto, occorre avere l'accortezza di collocare la partizione '''EFI''' nella prima posizione all'inizio del disco o al massimo in seconda posizione qualora fosse presente la partizione nascosta di ''recovery'' di Windows. Vengono qui riportati un paio di esempi di output (non completo) del comando '''`sudo parted -l`''': {{{ Numero Dimensione File system Nome Flag 1 419MB ntfs Basic data partition nascosta, diag 2 315MB fat32 EFI system partition avvio 3 134MB Microsoft reserved partition msftres 4 241GB ntfs Basic data partition 6 61,0GB ext4 7 8000MB linux-swap(v1) 8 172GB ext4 5 16,9GB ntfs Basic data partition nascosta, diag }}} I numeri laterali si riferiscono alle partizioni: 1 → /dev/sda1, 2 → /dev/sda2, e così via.<<BR>>In questo caso si può notare la presenza in posizione 1 della partizione nascosta di ripristino di Windows e quindi a seguire la partizione EFI. {{{ Numero Dimensione File system Nome Flag 1 262MB fat32 avvio 2 4295MB linux-swap(v1) 3 21,5GB ext4 4 21,5GB ext4 5 21,5GB ext4 6 431GB ext4 }}} In questo caso, un disco predisposto per contenere partizioni per sistemi Linux, si nota in posizione 1 l'area in formato fat32 per ospitare la partizione EFI. |
# Tema theme = "catppuccin_frappe" [editor] # Sezione generica # Salvataggio automatico quando la finestra dell'editor perde il focus auto-save = true # Visualizza il testo a capo quando la finestra è stretta soft-wrap.enable = true [keys.normal] # Sezione dedicata alla modalità "normale" # Opzione alternativa di salvataggio file talvolta più comodo di :w C-q = ":write" # Bloccare e riattivare il language server protocol A-s = ":lsp-stop" A-g = ":lsp-restart" [keys.insert] # Sezione dedicata alla modalità "inserisci" # Muoversi di parola in parola a destra e sinistra tramite i tasti freccia "C-right" = "move_next_word_start" "C-left" = "move_prev_word_start" # Replicare la funzione goto per portare il cursore a inizio linea, # sul primo carattere di linea e a fine linea "C-a" = "goto_line_start" "C-s" = "goto_first_nonwhitespace" "C-l" = "goto_line_end" # Salvataggio file C-q = ":write" }}} = LSP = Per l'installazione dei ''Language Server Protocol'' ('''LSP''') consultare la [[Ufficio/EditorDiTesto/Helix/Lsp|seguente pagina]]. |
Linea 115: | Linea 260: |
* [[Hardware/DispositiviPartizioni/MontarePartizioni|Guide al montaggio delle partizioni]] * [[Hardware/DispositiviPartizioni/PartizionamentoManuale|Guida al partizionamento manuale]] |
* [[https://helix-editor.com/|Sito ufficiale]] * [[https://docs.helix-editor.com/|Documentazione ufficiale]] |
Linea 118: | Linea 264: |
CategoryHardware | CategoryProgrammazione CategoryProduttivita |
Guida verificata con Ubuntu: 24.04
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Helix è un editor di testo modale utilizzabile nel terminale simile a Vim ma con la caratteristica particolare di ridurre al minimo eventuali configurazioni per avere da subito un editor con una buona impostazione di default e ottime funzionalità a portata di mano.
Nonostante Helix possa semplificare la vita rispetto a editor come Vim, NeoVim, Emacs, ecc.. essendo un software evoluto per l'editazione di testi, richiede comunque un certo impegno per impararne l'utilizzo.
In questa guida vengono giusto introdotte alcune nozioni. Per approfondimenti si rimanda all'ottima documentazione ufficiale ed è inoltre consigliabile l'avvio di Helix in modalità tutor, una guida interattiva passo passo particolarmente utile per chi stia utilizzando per la prima volta un editor modale.
Per l'installazione dei Language Server Protocol (LSP) consultare la seguente pagina.
Installazione
Installare il pacchetto snap digitando nel terminale:
sudo snap install helix --classic
Da pacchetto .deb
In alternativa Helix può essere installato in formato .deb da un repository esterno.
Aggiungere la nuova sorgente software digitando nel terminale:
sudo add-apt-repository ppa:maveonair/helix-editor
Installare Helix digitando:
sudo apt install helix
Avvio e chiusura
Comandi di avvio da terminale:
Comando |
Descrizione |
hx |
Apre l'editor. |
helix |
Versione estesa del comando precedente. |
hx percorso/file |
Apre direttaemtne un file all'interno di Helix. |
In alternativa per l'apertura dei file è possibile sfruttare il file picker o il comando :open.
Questi i comandi da editor di chiusura da digitare in modalità normale:
Comando |
Descrizione |
:q |
Chiude la sessione di Helix. |
:q! |
Chiude la sessione senza salvare eventuali modifiche. |
:wq |
Salva le modifiche e chiude la sessione. |
Modalità
Trattandosi di un editor modale, per ogni tipologia di azione è prevista una modalità che deve essere attivata. All'apertura di un file Helix sarà in modalità normale, cioè una modalità che permette di muoversi attraverso il testo e applicare modifiche come spostare o copia/incollare il testo stesso. Per poter inserire caratteri sarà necessario passare alla modalità inserimento tramite il tasto i. Con il tasto Esc si ritornerà sempre alla modalità normale.
Niente esclude che a proprio piacimento l'utente possa impostare scorciatoie da tastiera che permettano di sfruttare azioni non previste nella modalità originaria. Ad esempio è possibile attivare scorciatoie da tastiera che permettano in modalità inserimento di spostarsi velocemente fra le righe del testo.
Da notare che mouse e touchpad continueranno a funzionare come di consueto e potranno essere utilizzati per selezionare del testo e incollarlo tramite clic centrale o tap a tre dita.
Segue un elenco con alcune modalità:
Modalità |
Tasti |
Descrizione |
Normale |
Esc |
Modalità predefinita nella quale è possibile scorrere, selezionare, copiare, incollare testo e altro. Si ritorna ad essa premendo Esc. |
Inserimento |
i |
Inserimento. |
|
c |
Inserimento cancellando il testo selezionato. |
|
o |
Inserimento a capo. |
|
I |
Inserimento a inizio riga. |
|
A |
Inserimento a fine riga. |
Selezione |
v |
I tasti per muoversi attraverso il testo faranno si che il testo venga selezionato. |
Ricerca |
s |
Da attivare dopo aver selezionato del testo. Permette la ricerca di parole/caratteri all'interno del testo selezionato. |
Prompt dei comandi
Premendo in modalità normale il tasto relativo ai due punti : si aprirà in basso il prompt dei comandi e poco più sopra un lungo elenco di comandi disponibili. Tramite il tasto tab è possibile scorrere e selezionare la funzionalità desiderata. Per non dover premere il tasto tab infinite volte, sarà sufficiente digitare le prime lettere di un comando per attivare l'auto completamento.
L'elenco dei comandi eseguiti in precedenza sarà consultabile premendo il tasto freccia su ↑.
Segue un breve elenco dei principali comandi.
Comando |
In breve |
Dscrizione |
:quit |
:q |
Chiudi Elix. |
:open |
:o |
Apri file. |
:new |
:n |
Apri un nuovo file. |
:buffer-next |
:bn |
Passa al successivo file aperto. |
:buffer-close |
:bc |
Chiudi il file corrente. |
:buffer-close-others |
:bco |
Chiudi gli altri file. |
:buffer-close-all |
:bca |
Chiudi tutti i file. |
:theme |
|
Seleziona tema. |
:config-open |
|
Apri il config.toml |
:config-reload |
|
Ricarica la configurazione. |
:run-shell-command |
:sh |
Esegui comandi da shell (potrebbe non funzionare per tutti i comandi) |
:lsp-stop |
|
Ferma il language server protocol |
:lsp-restart |
|
Riavvia il language server protocol |
Temi
È possibile testare una vasta gamma di temi presenti di default in Helix.
In modalità normale premere :theme e quindi premere spazio per aprire la lista dei temi.
Scorrere i temi tramite tasto tab. Immediatamente verranno applicati.
Premere invio per utilizzare uno dei temi.
Per rendere un tema predefinito:
se assente creare il file ~/.config/helix/config.toml.
Supponendo di voler utilizzare il tema catppuccin_frappe, nel file dovrà essere inserita la stringa:
theme = "catppuccin_frappe"
- Salvare e chiudere il file di configurazione.
Muoversi attraverso il testo
Sebbene in modalità normale sia possibile spostarsi fra i caratteri con i tasti freccia, il modo principale è attraverso i tasti h, j, k, l, non a caso la posizione base delle dita della mano destra nell'utilizzo corretto della tastiera.
Tasto |
Equivalente |
Sposta il cursore |
h |
← |
a sinistra |
j |
↓ |
giù |
k |
↑ |
su |
l |
→ |
a destra |
È possibile velocizzare gli spostamenti saltando di parola in parola selezionandole:
Tasto |
Caratteri selezionati |
w |
In avanti fino alla prossima parola esclusa. |
e |
Avanti fino all'ultimo carattere della parola corrente. |
b |
Indietro fino all'inizio della parola. |
Attraverso la funzione Goto il cursore può eseguire i seguenti spostamenti:
Tasti |
Spostamento cursore |
g s |
Primo carattere riga corrente. |
g h |
Inizio riga. |
g l |
Fine riga. |
g 8 g |
Riga numero 8. (Sostituire numero riga a proprio piacimento) |
g g |
Inizio file |
g e |
Fine file |
Copia/incolla
Nel caso non dovesse funzionare il copia/incolla da finestre esterne, assicurarsi di aver installato il pacchetto wl-clipboard.
Ricordando che Helix è comunque in grado di incollare del testo selezionato tramite clic centrale del mouse o tap a tre dita sul touchpad, viene qui mostrata una lista di comandi per il copia/incolla in modalità normale:
Tasti |
Spostamento cursore |
y |
Copia testo selezionato da incollare sul medesimo file. |
spazio y |
Copia testo da incollare su altro file. |
p |
Incolla dopo il cursore il testo copiato sul medesimo file. |
shift p |
Incolla prima del cursore il testo copiato sul medesimo file. |
spazio p |
Incolla dopo il cursore il testo copiato da altro file. |
spazio shift p |
Incolla prima del cursore il testo copiato da altro file. |
Selezione multi linea
- È possibile procedere in due modi:
In modalità normale ripetendo la combinazione shift c il cursore verrà moltiplicato su una linea verticale.
Dopo aver selezionato del testo, passando alla modalità di ricerca (tasto s) è possibile digitare la parola da ricercare e quindi premere invio.
Per selezionare tutto il testo in modalità normale digitare il tasto percentuale %.
Annullare/ripetere azione
In modalità normale:
u |
annulla azione |
shift u |
ripete azione |
Elenchi scorciatoie
Come si può intuire una delle maggiori difficoltà nell'utilizzo di un editor di testo di questo genere sta nel memorizzare una lunga lista di scorciatoie da tastiera. Tuttavia Helix mette a disposizione per molte delle sue funzionalità una comoda finestra con relativo elenco di scorciatoie ogni volta che in modalità normale la funzionalità viene richiamata attraverso relativo tasto di attivazione.
Space - tasto: spazio
In basso a destra si aprirà una finestra con svariate funzionalità. Per citarne alcune:
f e F aprono il file picker, comodo e pratico per aprire file;
b per invocare il buffer picker ossia tutti i file aperti nell'attuale sessione;
Sia per il file che per il buffer picker, se il terminale è aperto a schermo intero, oltre all'elenco dei file sarà visibile anche un'anteprima del file selezionato.
w invoca la lista comandi per suddividere verticalmente od orizzontalmente una finestra;
Vengono elencati i già citati comandi y e p per il copia/incolla;
Il comando k per richiamare la documentazione ufficiale inerente al linguaggio in utilizzo.
Match - tasto: m
Funzionalità utile a gestire parentesi e virgolette per:
inserire parentesi intorno al testo selezionato, ad esempio: m s (
selezionare il testo interno alle parentesi: m i m
sostituire parentesi intorno a un testo, ad es. [] con {}: m r [ {
far saltare il cursore fra la parentesi di apertura e di chiusura: m m
A proposito di parentesi, pur non essendo parte della funzione match, merita una menzione il comando alt o. Ogni volta che viene premuto espande la selezione del testo fino alle virgolette o parentesi più esterne.
File di configurazione
Per adattare Helix alle proprie esigenze è possibile creare ed editare il file ~/.config/helix/config.toml, caratterizzato da specifiche sezioni come ad esempio [keys.normal], [keys.insert], ecc..
Il capitolo Keymap della documentazione ufficiale mostra i comandi associati alle scorciatoie da tastiera, molto utile per poter associare un comando a una scorciatoia da tastiera che faccia al proprio caso. Il capitolo Configuration entra maggiormente nel dettaglio.
Le righe che iniziano col carattere # sono commenti.
# Tema theme = "catppuccin_frappe" [editor] # Sezione generica # Salvataggio automatico quando la finestra dell'editor perde il focus auto-save = true # Visualizza il testo a capo quando la finestra è stretta soft-wrap.enable = true [keys.normal] # Sezione dedicata alla modalità "normale" # Opzione alternativa di salvataggio file talvolta più comodo di :w C-q = ":write" # Bloccare e riattivare il language server protocol A-s = ":lsp-stop" A-g = ":lsp-restart" [keys.insert] # Sezione dedicata alla modalità "inserisci" # Muoversi di parola in parola a destra e sinistra tramite i tasti freccia "C-right" = "move_next_word_start" "C-left" = "move_prev_word_start" # Replicare la funzione goto per portare il cursore a inizio linea, # sul primo carattere di linea e a fine linea "C-a" = "goto_line_start" "C-s" = "goto_first_nonwhitespace" "C-l" = "goto_line_end" # Salvataggio file C-q = ":write"
LSP
Per l'installazione dei Language Server Protocol (LSP) consultare la seguente pagina.