Hur man lägger till delar av ändringar i en fil till ett git-arkiv

Tänk dig att gjort flera sinsemellan orelaterade ändringar i en fil. Nu är det helt plötsligt dags att checka in ändringarna i git-arkivet. Hur gör man för att checka in filen i steg med enbart relaterade ändringar i varje commit?

Enkelt. Använd git add --patch filnamn. Git bryter då ner ändringen i delar och frågar dig vad du vill göra med varje del.

Läs mer på stackoverflow.

Rulla tillbaka rader i screen

Vid arbete i terminalen så använder man normalt kommandona shift-pgUp och shift-pgDown för bläddra upp och ner i rullningsbufferten. Dessa kommandon fungerar inte i screen eftersom denna implementerar en egen buffert.

För att bläddra upp och ner i screens buffert så kan man istället gå via copy-mode. Aktivera copy-mode genom kommandot ctrl-a [ eller ctrl-a esc. Därefter kan man bläddra upp och ner med hjälp av pgUp/pgDown, piltangenter eller screens inbyggda kommandon.

När man hittat det man sökte efter går man tillbaka till kommandoprompten genom att trycka <code>Return</code> två gånger. Flyttar man markören mellan return-tryckningarna så kopierar man dessutom innehållet däremellan. Detta kan sedan klistras in med kommandot ctrl-a ].

Referenser

  1. FAQ: How to scrollback in GNU SCREEN?
  2. Scroll inside Screen, or Pause Output

Infoga specialtecken i emacs

För att infoga specialtecken i emacs kan man använda sig av kommandot insert-char. Kommandot är normalt bundet till tangetkombinationen C-x 8.

Man kan använda kommandot på samma sätt som man använder AltGr-tangenten, dvs C-x 8 ^ i producerar î. En lista över alla tecken som kan skrivas på detta sätt får man fram genom kommandot C-x 8 C-h.

Tecken som inte kan skrivas på detta sätt kan istället infogas genom att anropa insert-char och sedan ange tecknets unicode-namn eller nummer. Kommandot för tecknet   är till exempel C-x 8 [Enter] DELTA EQUAL TO. Tecknet δ kan infogas genom kommandot C-x 8 [Enter] 03b4.

En tabell över unicode-tecken och dess nummer finns på http://unicode-table.com.

Om man vill ha information om ett tecken som redan finns i emacs-buffern så placerar man markören på tecknet och anropar kommandot describe-char.

Användbara kommandon i emacs

Emacs har många kommandon och tangentbordsgenvägar. Man lär sig snabbt de vanligaste såsom att öppna, spara filer och avsluta emacs. Det finns dock så många andra användbara kommandon att det är svårt att komma ihåg alla.

Några användbara kommandon

Byt plats på två tecken: C-t
Byt plats på två ord: M-t
Byt plats på två rader: C-x C-t

Avbryt kommando i minibuffer: C-g

Ta bort överflödiga blanktecken:  M-x delete-trailing-whitespace eller M-X whitespace-cleanup

Mer heltäckande listor finns bland annat på följande länkar:

Förhindra delat fönster i emacs

När man öppnar två filer samtidigt i emacs från kommandoraden öppnas de som standard i varsitt fönster. Kommandot
$ emacs foo bar
ger alltå följande resultat:
Delat fönster i emacs

Om man istället vill att endast ett fönster öppnas kan man lägga till följande kod i ~/.emacs:

(add-hook 'emacs-startup-hook
          (lambda () (delete-other-windows)) t)

Man kan sedan navigera mellan buffrarna på gängse vis.