[Risolto] Modificare cartella di default in GNU Emacs

  • Creatore
    Topic
  • #57387
    admin
    Amministratore del forum
      Up
      0
      Down
      ::


      Buonasera forum.

      Quando apro GNU Emacs e voglio creare un nuovo file (C-x C-f), nel mini-buffer inferiore esce la seguente cartella di default:
      `C:\Windows\system32\`
      Volevo chiedere se, e come, è possibile modificarla.

      Grazie,
      ansys.

    Visualizzazione 14 filoni di risposte
    • Autore
      Risposte
      • #57388
        Up
        0
        Down
        ::


        Il percorso predefinito è contenuto nella variabile `default-directory’, che equivale al percorso del file corrispondente al buffer aperto (vedi http://www.gnu.org/software/emacs/manual/html_node/emacs/File-Names.html#index-default_002ddirectory-808 oppure dentro Emacs: `C-h i d m Emacs RET m File Names’). Come spiegato nel manuale puoi cambiare percorso predefinito con il comando `cd’: `M-x cd RET C:/percorso/che/vuoi’. Quindi una possibilità sarebbe quella di mettere nel tuo file di inizializzazione
        `(cd “C:/percorso/che/vuoi”)`
        Un’altra possibilità è quella di impostare forzatamente `default-directory’. Puoi farlo con l’interfaccia di `customize-variable’ (`M-x customize-variable RET default-directory’) oppure aggiungendo al tuo file di inizializzazione (in alternativa all’istruzione di prima)
        `(setq default-directory “C:/percorso/che/vuoi”)`

      • #57389
        admin
        Amministratore del forum
          Up
          0
          Down
          ::


          Semplicemente perfetto!

          Grazie mille,
          ansys.

        • #57390
          Up
          0
          Down
          ::


          Non so come funzioni su Windows (perché la gerarchi del file system è diversa rispetto a quella dei sistemi *nix, non c’è un’unica radice), però su GNU/Linux ci sono alcune comode scorciatoie. A parte `..’ per indicare la cartella superiore e `~/’ per la propria home, scrivendo come percorso del file da visitare
          `~/Scrivania//etc/passwd`
          il doppio slash ha il significato di “ignora tutto quello che c’è prima del secondo slash”, quindi il percorso realmente letto è il file `/etc/passwd’. È comodo quando bisogna visitare file in posizioni molto distanti da `default-directory’ (che nell’esempio di sopra potrebbe avere il valore `~/Scrivania’) e non si vuole perdere tempo a cancellare il percorso suggerito nel minibuffer (per esempio perché è un po’ troppo lungo e si è particolarmente pigri).

          Per maggiori informazioni su queste scorciatoie puoi vedere il manuale: http://www.gnu.org/software/emacs/manual/html_node/emacs/Minibuffer-File.html#Minibuffer-File oppure in Emacs `C-h i d m Emacs RET m Minibuffer File’.

        • #57391
          admin
          Amministratore del forum
            Up
            0
            Down
            ::

            Non so come funzioni su Windows (perché la gerarchi del file system è diversa rispetto a quella dei sistemi *nix, non c’è un’unica radice), però su GNU/Linux ci sono alcune comode scorciatoie. A parte `..’ per indicare la cartella superiore e `~/’ per la propria home, scrivendo come percorso del file da visitare
            `~/Scrivania//etc/passwd`
            il doppio slash ha il significato di “ignora tutto quello che c’è prima del secondo slash”, quindi il percorso realmente letto è il file `/etc/passwd’. È comodo quando bisogna visitare file in posizioni molto distanti da `default-directory’ (che nell’esempio di sopra potrebbe avere il valore `~/Scrivania’) e non si vuole perdere tempo a cancellare il percorso suggerito nel minibuffer (per esempio perché è un po’ troppo lungo e si è particolarmente pigri).

            Per maggiori informazioni su queste scorciatoie puoi vedere il manuale: http://www.gnu.org/software/emacs/manual/html_node/emacs/Minibuffer-File.html#Minibuffer-File oppure in Emacs `C-h i d m Emacs RET m Minibuffer File’.

            Grazie mille. Appena ho tempo provo anche questo.

            Grazie ancora,
            ansys.

          • #57392
            admin
            Amministratore del forum
              Up
              0
              Down
              ::


              Ciao a tutti.

              Ho installato Emacs 23.3.1 su Ubuntu 12.04, ma i metodi riportati sopra non funzionano. La variabile default-directory non c’è proprio, il metodo con cd non sortisce alcune effetto.

              Grazie
              Orlando

            • #57393
              Up
              0
              Down
              ::

              ansys” post=72578Ciao a tutti.

              Ho installato Emacs 23.3.1 su Ubuntu 12.04, ma i metodi riportati sopra non funzionano. La variabile default-directory non c’è proprio, il metodo con cd non sortisce alcune effetto.

              Grazie
              Orlando

              Anche io ho la stessa versione di Emacs su Ubuntu, ma la variabile [tt]default-directory[/tt] esiste e vale [tt]~/[/tt] (ho controllato con [tt]C-h v default-directory RET[/tt]). Hai modificato il file di inizializzazione? Prova ad avviare Emacs da terminale con
              `emacs -Q`e controlla l’esistenza e l’eventuale valore della variabile con il metodo sopra indicato. L’opzione [tt]-Q[/tt] serve per non caricare alcun file di inizializzazione, quindi avvia l’Emacs nudo e crudo così come è stato compilato

            • #57394
              admin
              Amministratore del forum
                Up
                0
                Down
                ::

                Elrond” post=72585Anche io ho la stessa versione di Emacs su Ubuntu, ma la variabile [tt]default-directory[/tt] esiste e vale [tt]~/[/tt] (ho controllato con [tt]C-h v default-directory RET[/tt]).

                Anche a me dice che esiste e che vale [tt]~/[/tt]; tuttavia con [tt]M-x customize-variable RET[/tt], [tt]default-directory[/tt] non viene proprio vista.

                Elrond” post=72585Hai modificato il file di inizializzazione? Prova ad avviare Emacs da terminale con
                `emacs -Q`e controlla l’esistenza e l’eventuale valore della variabile con il metodo sopra indicato. L’opzione [tt]-Q[/tt] serve per non caricare alcun file di inizializzazione, quindi avvia l’Emacs nudo e crudo così come è stato compilato

                Si, ho modificato il file di inizializzazione, ma per altre cose. Avviando Emacs con l’opzione [tt]-Q[/tt] la variabile viene sempre vista, ma non in fase di modifica.

                Grazie
                Orlando

              • #57395
                Up
                0
                Down
                ::

                ansys” post=72587

                Anche io ho la stessa versione di Emacs su Ubuntu, ma la variabile [tt]default-directory[/tt] esiste e vale [tt]~/[/tt] (ho controllato con [tt]C-h v default-directory RET[/tt]).

                Anche a me dice che esiste e che vale [tt]~/[/tt]; tuttavia con [tt]M-x customize-variable RET[/tt], [tt]default-directory[/tt] non viene proprio vista.

                Elrond” post=72585Hai modificato il file di inizializzazione? Prova ad avviare Emacs da terminale con
                `emacs -Q`e controlla l’esistenza e l’eventuale valore della variabile con il metodo sopra indicato. L’opzione [tt]-Q[/tt] serve per non caricare alcun file di inizializzazione, quindi avvia l’Emacs nudo e crudo così come è stato compilato

                Si, ho modificato il file di inizializzazione, ma per altre cose. Avviando Emacs con l’opzione [tt]-Q[/tt] la variabile viene sempre vista, ma non in fase di modifica.

                Grazie
                Orlando

                Ok, sembra che neanche il mio [tt]customize-variabile[/tt] apprezzi particolarmente questa variabile, però aggiungere
                `(setq default-directory “~/percorso/che/vuoi”)`al file di inizializzazione a me funziona 😉

              • #57396
                admin
                Amministratore del forum
                  Up
                  0
                  Down
                  ::

                  Elrond” post=72588Ok, sembra che neanche il mio [tt]customize-variabile[/tt] apprezzi particolarmente questa variabile, però aggiungere
                  `(setq default-directory “~/percorso/che/vuoi”)`al file di inizializzazione a me funziona 😉

                  Allora, nella mia HOME ho la cartella EMC, pertanto ho scritto

                  `(setq default-directory “~/orlando/EMC”)`
                  ma non va.

                  Ciao
                  Orlando

                • #57397
                  Up
                  0
                  Down
                  ::

                  ansys” post=72589

                  Ok, sembra che neanche il mio [tt]customize-variabile[/tt] apprezzi particolarmente questa variabile, però aggiungere
                  `(setq default-directory “~/percorso/che/vuoi”)`al file di inizializzazione a me funziona 😉

                  Allora, nella mia HOME ho la cartella EMC, pertanto ho scritto

                  `(setq default-directory “~/orlando/EMC”)`
                  ma non va.

                  Ciao
                  Orlando

                  ~ è una abbreviazione del percorso della $HOME (che, azzardo, per te è [tt]/home/orlando[/tt]), quindi devi scrivere
                  `(setq default-directory “~/EMC”)`se il percorso assoluto della cartella è [tt]/home/orlando/EMC[/tt] (o comunque, in generale, se EMC sta esattamente nella tua home)

                • #57398
                  admin
                  Amministratore del forum
                    Up
                    0
                    Down
                    ::

                    Elrond” post=72592~ è una abbreviazione del percorso della $HOME (che, azzardo, per te è [tt]/home/orlando[/tt]), quindi devi scrivere
                    `(setq default-directory “~/EMC”)`se il percorso assoluto della cartella è [tt]/home/orlando/EMC[/tt]

                    Anche

                    `(setq default-directory “~/EMC”)`
                    non funziona.

                    Ciao
                    Orlando

                  • #57399
                    Up
                    0
                    Down
                    ::

                    ansys” post=72593

                    ~ è una abbreviazione del percorso della $HOME (che, azzardo, per te è [tt]/home/orlando[/tt]), quindi devi scrivere
                    `(setq default-directory “~/EMC”)`se il percorso assoluto della cartella è [tt]/home/orlando/EMC[/tt]

                    Anche

                    `(setq default-directory “~/EMC”)`
                    non funziona.

                    Ciao
                    Orlando

                    Ok, cosa intendi per non funziona? Quali sono i sintomi e cosa invece ti aspetteresti che succeda?

                  • #57400
                    admin
                    Amministratore del forum
                      Up
                      0
                      Down
                      ::

                      Elrond” post=72594Ok, cosa intendi per non funziona?

                      Quando apro Emacs e voglio scrivere un nuovo file la cartella di lavoro è [tt]~/[/tt];

                      Elrond” post=72594Quali sono i sintomi e cosa invece ti aspetteresti che succeda?

                      Mi aspetto di trovare [tt]~/EMC[/tt]; su Windows, dopo aver scritto nel file .emacs la seguente riga

                      ` (setq default-directory “C:\Users\Orlando\EMC”)`
                      Emacs, alla sua apertura, si porta in [tt]C:\Users\Orlando\EMC[/tt].

                      Grazie
                      Orlando

                    • #57401
                      Up
                      0
                      Down
                      ::

                      ansys” post=72599

                      Ok, cosa intendi per non funziona?

                      Quando apro Emacs e voglio scrivere un nuovo file la cartella di lavoro è [tt]~/[/tt];

                      Elrond” post=72594Quali sono i sintomi e cosa invece ti aspetteresti che succeda?

                      Mi aspetto di trovare [tt]~/EMC[/tt]; su Windows, dopo aver scritto nel file .emacs la seguente riga

                      ` (setq default-directory “C:\Users\Orlando\EMC”)`
                      Emacs, alla sua apertura, si porta in [tt]C:\Users\Orlando\EMC[/tt].

                      Grazie
                      Orlando

                      Ok, allora a me “funziona” nel senso che aggiungere la riga
                      `(setq default-directory “~/Scrivania”)`fa sì che la scrivania diventi la cartella predefinita all’apertura di Emacs. Sei sicuro di aver scritto il percorso correttamente? Ho notato che se si inserisce un percorso non esistente non si ha alcun tipo di avviso da parte di Emacs all’avvio, neanche avviandolo con l’opzione [tt]–debug-init[/tt]. Scusami se ti chiedo una cosa così ovvia però le provo tutte prima di ammettere di non saperti aiutare 😀

                    • #57402
                      admin
                      Amministratore del forum
                        Up
                        0
                        Down
                        ::

                        Elrond” post=72615Ok, allora a me “funziona” nel senso che aggiungere la riga
                        `(setq default-directory “~/Scrivania”)`fa sì che la scrivania diventi la cartella predefinita all’apertura di Emacs. Sei sicuro di aver scritto il percorso correttamente? Ho notato che se si inserisce un percorso non esistente non si ha alcun tipo di avviso da parte di Emacs all’avvio, neanche avviandolo con l’opzione [tt]–debug-init[/tt]. Scusami se ti chiedo una cosa così ovvia però le provo tutte prima di ammettere di non saperti aiutare 😀

                        Temo di averlo scritto correttamente 🙁 .

                        Grazie
                        Orlando

                    Visualizzazione 14 filoni di risposte
                    • Devi essere connesso per rispondere a questo topic.

                    Go to top