5 maj 2015

Bash på Mac

En av de större fördelarna med att använda en Mac är såklart den naturliga kopplingen till Terminalen, normalt realiserad av bash. Dock är det så att standardinstallationen lämnar en del att önska vad det gäller bash, så vissa inställningar behöver göras.

Här utgår jag från färgtemat Pro, men gör ändringen att texten blir grön på svart och typsnittet ändras till Monaco 13pt. Alternativt kan Ubuntu Mono med samma storlek användas, det är en smaksak.

Val av editor: vi

Jag har alltid använt vi, så det är den texteditor jag är bekant med, men även denna kräver lite handpåläggning före det är klart. Skapa en fil i din hem-katalog (/Users/username) med namnet .vimrc och fyll den med denna information:

" Convert all files to unix format and set default fileformat to unix.
set ffs=unix
set ff=unix
"
" " backgound is dark or light
" " :set background=dark
"
" " show status line
set laststatus=2
"
" " Show the line and column number of the cursor position in the status line.
set ruler
"
" " Shows INSERT in the status line while in insertmode
set showmode
"
" " show current uncompleted command
set showcmd
"
" " Maximum width of text that is being inserted.
" set textwidth=72
"
" " Smart alignment at beginning of line
set autoindent
"
" " use 4 spaces when using autoindent/cindent
set shiftwidth=4
"
" " use the same value as shiftwidth
set softtabstop=4
"
" " use the standard 8 character positions for a TAB
set tabstop=4
"
" " allow backspacing over identatiom, end-of-line, and start-of-line
set backspace=2
"
" " set cindent and tabstop for *.c, *.h, *.pl and *.sh files
autocmd BufEnter *.c,*.cpp,*.h,*.pl,*.sh set cindent tabstop=4
"
" " show matching parenthesis
set showmatch
"
" " show colored syntax highlighting
syntax on
"
" " do not Ignore case on search
set ic
"
" " show immediately where the so far typed pattern matches
set incsearch
set nu

Denna fil gör ganska många saker, men mest synligt är nog ändå att den ger stöd för syntax highlightning, radnumrering och auto-indenterar kode som du skriver.

Ett exempel på hur det kan se ut ser du här:

Hitta filer med locate

Det finns många sätt att hitta filer i Terminalen, men ett av de snabbaste är med kommandot locate. Dock finns denna databas inte genererad vid installation, så detta måste skapas före vi kan använda den. Dutta gör du med kommandot:

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist

Bash

Vi kan ju naturligtvis använda oss av många olika alias ihop med bash, själv är det i alla fall ett par stycken jag inte kan leva utan. I din hemkatalog, skapa filen .bashrc och fyll den med:

 

alias d='ls -alG'
alias ..='cd ..'

Kanske har du fler alias du använder, men det är i alla fall här du matar in dem. För att din .bashrc skall läsas in automatiskt när du öppnar ett terminalfönster behöver du berätta detta. I din hemkatalog skapa filen .profile och fyll den med detta:

 

# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi

.DS_Store

En annan trevlig sak är ju att slippa alla dessa .DS_Store-filer när vi ändå är igång. Klistra in detta i terminalen så är de ett minne blott:

defaults write com.apple.desktopservices DSDontWriteNetworkStores true

Nu har du fått lite personliga inställningar av bash, så nu klarar du dig själv ett tag. Lycka till med skalet!

Postat under: Teknik

Imponerande! Du kom ända hit!

Logo
visningsbild

Christian Ohlsson

crille (at) crille (dot) org

https://crille.org

Logo Logo Logo Logo Logo Logo Logo

Crilles blog är en hemsida som drivs av mig, Christian Ohlsson. Jag bor i ett gulligt hus i Trollhättan tillsammans med fru och dotter. Dagarna spenderar jag som universitetsadjunkt på Högskolan Väst's avdelning för Medier & Design. Där håller jag kurser inom webbdesign, spelutveckling och programmering. Kvällarna tillbringar jag på de_inferno, de_train, fy_pool_day eller någon av de andra banorna i Counter Strike.

Temat på denna sida är gjort av mig med hjälp av det alldeles underbara CMS-systemet Wordpress. Naturligtvis är allt skapat på en PC med Brackets. Up the Irons!