vscode

fordeler/ulemper med VSCode/Webstorm/Neovim

2023-10-22

VS Code cons

  • den raskeste måten å cycle through hver changed file er å klikke på hver fil i source control panel. Ingen mulighet for å navigere gjennom med piltastene.
  • man må ofte reloade window på vscode når man avinstallerer/deaktiverer en plugin
  • kan ikke stole på statuslinjen, at den alltid viser riktig branch
  • Open recent-funksjonaliteten er litt brukken
    • hvis man prøver å åpne recent project-fuzzy-finderen umiddelbart etter at man har åpnet vscode, så vil den først åpnes, og så lukkes automatisk. Man kan jobbe rundt dette ved å åpne den ved å trykke og holde ctrl mens man trykker R, da
  • Vscodes git integrasjone er ikke så bra
    • git commit
      • kan bare skrive heading på commit messages
      • kan ikke begynne på commit message øyeblikkelig etter at man har addet med vscodes git add knapp / snarvei
    • git add
      • funker ikke for å markere solved merge conflicts, for en eller annen grunn
  • live evaluering, (linting/suggestions) tar tid
    • TS bruker tid på å slå inn
    • unused variables (eslint?) bruker også tid...
    • code suggestions/completions bruker også litt tid...
  • feilaktig linting
    • noen ganger så tror TS/eslint eller noe at noen packages ikke er installert. Når de virkelig ER det. Man må restarte VSCode for å se effekten
  • reload window forårsaker noen ganger at kommandolinjen hopper til det andre prosjektet du har åpent. F.eks. om du driver og jobber i med et bibliotek-prosjekt og et app-prosjekt, og må reloade vscode vinduet for appen, så kan kommandolinjen finne på å cd-e til biblioteket. Sykt!
  • hvis man prøver vim extension må man gi slipp på tastatursnarveier som
    • ctrl+pageUp/Down (noen ganger, ellers så funker det, bare at det er litt tregt. Kanskje forårsaket av vim extension, kanskje ikke)
    • close tabs (ctrl w) (!!! veldig irriterende)
    • noen ganger så føkker det opp angrefunksjonaliteten. jeg klikker på u og den bare sletter linjer under cursor WTF!
    • Man kan i hvert fall skru av og på vim (deactivated mode (oftest, noen ganger klikker den))

Kanskje du bør prøve webstorm

Webstorm

Pros

  • bedre git diff (bilde)
  • className får curly braces
  • kan lime inn filer fra windows explorer til webstorm explorer
  • leser classes i css og bringer auto-complete til jsx/html
  • automatisk sync mellom starting & ending tag

Cons:

  • hvordan lage tastatursnarvei for en enkelt bokstav?? (curly braces = shift alt 8)
  • uvant!

Neovim

Pros

  • kan bestemme selv hvordan lsp / code suggestion/completion skal funke
    • man kan bestemme at nedover-knappene ikke navigerer i listen, men flytter cursor nedover
  • vim motions funker alltid, i motsetning til vim addon i VS Code

Cons

  • MYE manuelt setup
  • man MÅ sette :set paste før man limer inn noe som helst fra annet steds
  • vanskelig å kopiere noe fra neovim til OS clipboard (er det i det hele tatt mulig?)
  • ekstremt vanskelig/umulig å bruke tastatursnarveier med ctrl og alt. For en eller annen grunn funker ikke ctrl+ø, men alt+ø funker. Men både ctrl og alt funker for "l". Kan gjøre noe magi med Autohotkey/autokey, men det er veldig plundrete
  • å få packages til å jobbe sammen
    • problem med merge conflict highlight packagen blir helt upåvirket av colorscheme. Det gjør at conflict marker får STYGGE farger. Man må eksplisitt sette :colorscheme tokyonight-night for å få colorscheme til å overskrive de stygge fargene igjen. Men hele pakken brekker når man åpner lazygit. Så ja.

log variable with key

2023-10-22

VS Code snippet

  "Print variable to console": {
    "scope": "javascript,typescript",
    "prefix": "logvar",
    "body": "console.log('$1', $1)"
  }

Ohmybash

2023-10-22

Hvordan starte med ohmybash, velge theme og laste ned nødvendig font icons

Installasjon

bash -c "$(curl -fsSL https://raw.githubusercontent.com/ohmybash/oh-my-bash/master/tools/install.sh)"

Du får med masse aliases med dette. List alle med alias

Velge theme

nano ~/.bashrc
OSH_THEME="agnoster"

Save & exit: ctrl + x, y, [Enter]

Reload:

. ~/.bashrc

Hvis du har mellomrom i path to oh-my-bash insallation, slik:

# Path to your oh-my-bash installation.
export OSH=/c/Users/Pål Stakvik/.oh-my-bash

Må du enkapsulere path-en i quotes, ellers får du error

skaffe nødvendige font icons

evt. se på agnoster-zsh-theme

last ned Hack-fonten

  1. Gå til https://sourcefoundry.org/hack/ og last ned font. Windows executable funker for WSL og VS Code
  2. Kjør executable i nedlastninger
  3. Godta restart

Sette WSL til å bruke riktig font

  1. Åpne WSL
  2. høyreklikk toppmeny, velg 'properties'
  3. velg "Hack" fonten

ubuntu-omb

Sette VS Code til å bruke riktig font

  1. ctrl + shift + p
  2. settings.json
  3. lim inn "terminal.integrated.fontFamily": "Hack", https://stackoverflow.com/questions/37895501/display-issue-with-oh-my-zsh-agnoster-theme#answer-38475948

vscode-omb

Erstatte user @ hostname

...Med kun hostname:

prompt_context() {
  if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
    prompt_segment black default "$USER"
  fi
}

Eller hva det skal være:

prompt_segment black default "P"

image (9)

prompt_segment black default "%(!.%{%F{yellow}%}.)$USER" skal visstnok også funke, men jeg får bare slik tekst da:

image (8)

Git bash merknader

Får du permission denied ved git add .?

  • Kjør VS Code som administrator

Får du

hint: Waiting for your editor to close the file... 'C:\Users\Pål' is not recognized as an internal or external command,
operable program or batch file.
error: There was a problem with the editor '"C:\Users\Pål Stakvik\AppData\Local\Programs\Microsoft VS Code\bin\code.cmd" --wait'.
Please supply the message using either -m or -F option.

ved git commit (-v)

  • Prøv å kjør git config --global core.editor "code --wait". Les mer https://stackoverflow.com/questions/52195877/how-can-i-fix-git-commit-error-waiting-for-your-editor-to-close-the-file-wi