• Stars
    star
    804
  • Rank 56,229 (Top 2 %)
  • Language
    Vim Script
  • License
    MIT License
  • Created over 6 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

๐Ÿš€ ๐Ÿฆ† An intergalactic space theme for Vim, Terminal, and more!

Spaceduck ๐Ÿš€๐Ÿฆ†

Stars Fork MIT license Code Size Made with Neovim :)

Spaceduck Logo of duck in an astronaut uniform holding computer: credit to Lexi @kalrita_lw

Screenshot of terminal with vim spaceduck theme installed

Inspiration ๐Ÿ’ญ

This theme was inspired from my incessant desire to feel like I'm in space when I stare at a computer. "Spaceduck" takes its name from my love of duck dodgers as a kid.

If it looks ugly it's because I don't know what I'm doing pls help. If it's the sexiest thing you've ever seen, well then uhm.. you're welcome ๐Ÿ˜Ž

NOTE: This repo hosts the Vim/Neovim spaceduck theme, to install other ports look for the other ports below.

Colors Palette ๐ŸŽจ

Base Colors

Note: The Syntax color ID's are not an exhaustive & complete list.

Color Picker Boxes Palette Hex HSV/HSB RGB cterm/256 SYN ID
Red Color Red #e33400 14,100,89 227, 52, 0 166 Error, Ignore
Orange Color Orange #e39400 39,100,89 227, 148, 0 172 Exception, Keyword, SpecialChar
Green Color Green #5ccc96 151,55,80 92, 204, 150 78 Statement, Underlined, Function, Include, Conditonal
Yellow Color Yellow #f2ce00 51,100,95 242, 206, 0 220 Constant, Boolean, Character, Float, Number
Purple Color Purple #b3a1e6 256,30,90 179, 161, 230 146 PreProc, Special, Tag, Debug, StorageClass
Purple2 Color Purple2 #7a5ccc 256,55,80 122, 92, 204 98 Title, Define, Macro, Define, Precondit, (Operator)
Dark Purple Color Dark Purple #30365F 232, 49, 37 48, 54, 95 237 Comment, LineNR, MatchParen, EndOfBuffer, Pmenu, IncSearch
Dark Purple2 Color Dark Purple2 #686f9a 232,32,60 104, 111, 154 60 Todo, PmenuSbar, Conceal, Search
Cyan Color Cyan #00a3cc 192,100,80 0, 163, 204 38 Identifier, String, Structure, Typedef
Magenta Color Magenta #ce6f8f 340,46,81 206, 111, 143 168 Type, Delimeter, Operator

Special Colors

Color Picker Boxes Palette Hex HSV/HSB RGB cterm/256 SYN ID
Background Color Background #0f111b 230,44,11 15, 17, 27 233 Background
Foreground Color Foreground #ecf0c1 65,20,94 236, 240, 193 255 Foregrond, Delimiter
Visual Selection Color Visual Selection #1b1c36 238, 50, 21 27, 28, 54 234 Visual
Cursor Line Color Cursor Line #16172d 237,51,18 22, 23, 45 234 CursorLine

Coloration Colors

Color Picker Boxes Palette Hex HSV/HSB RGB cterm/256 SYN ID
Grey Color Grey #818596 229,14,59 129, 133, 150 102 Cursor, Tabline
Grey 2 Color Grey 2 #c1c3cc 229,5,80 193, 195, 204 251 TabLineSel
Pure White Color Pure White #ffffff 0,0,100 255, 255, 255 15 Search, Todo
Pure Black Color Pure Black #000000 0,0,0 0, 0, 0 0 VertSplit, TabLine

Current Language Support

Basically languages I looked at with my eyes to make sure they didn't look like poop.

Languages:

Note: if something looks off please submit an issue with a screenshot

  • C, C++, fortran, haskell, html, java, javascript, markdown, php, python, ruby, sql, LaTeX, typescript

Plugins:

Install ๐Ÿ’พ

If using Vim/Neovim I recommend installing the vim-polyglot plugin for improved syntax highlighting:

Plug 'sheerun/vim-polyglot'

Vim and Neovim

This repo hosts the Vim/Neovim color scheme.

Install the plugin with whatever plugin manager you use:

Plug 'pineapplegiant/spaceduck', { 'branch': 'main' }

And add this to your vimrc/init.vim configuration file:

    if exists('+termguicolors')
      let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
      let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
      set termguicolors
    endif

   colorscheme spaceduck

Or manually add the color theme to your 'runtimepath' for the file.

:h colors

  let g:airline_theme = 'spaceduck'

lightline normal mode screenshot

lightline insert mode screenshot

lightline visual mode screenshot

lightline replace mode screenshot

    let g:lightline = {
          \ 'colorscheme': 'spaceduck',
          \ }

Don't be afraid of the vim documentation either for more information, like for manual installs! :h colorscheme

lualine normal mode screenshot

lualine insert mode screenshot

lualine visual mode screenshot

lualine replace mode screenshot

You only really need 'theme': 'spaceduck', but this is what I have in my vimrc:

  let g:lualine = {
      \'options' : {
      \  'theme' : 'spaceduck',
      \  'section_separators' : ['๎‚ด', '๎‚ถ'],
      \  'component_separators' : ['๎‚ต', '๎‚ท'],
      \  'icons_enabled' : v:true,
      \},
      \'sections' : {
      \  'lualine_a' : [ ['mode', {'upper': v:true,},], ],
      \  'lualine_b' : [ ['branch', {'icon': '๎‚ ',}, ], ],
      \  'lualine_c' : [ ['filename', {'file_status': v:true,},], ],
      \  'lualine_x' : [ 'encoding', 'fileformat', 'filetype' ],
      \  'lualine_y' : [ 'progress' ],
      \  'lualine_z' : [ 'location'  ],
      \},
      \'inactive_sections' : {
      \  'lualine_a' : [  ],
      \  'lualine_b' : [  ],
      \  'lualine_c' : [ 'filename' ],
      \  'lualine_x' : [ 'location' ],
      \  'lualine_y' : [  ],
      \  'lualine_z' : [  ],
      \},
      \'extensions' : [ 'fzf' ],
      \}

  lua require("lualine").setup()

Other Spaceduck Ports

Terminal

Terminal install can be found at this repo: https://github.com/pineapplegiant/spaceduck-terminal

VSCode

Vscode theme can be found at this repo: https://github.com/tathran/spaceduck-vscode

Emacs

Emacs theme can be found at this repo: https://github.com/tathran/spaceduck-emacs

Slack

  • Go to User Menu > Preferences > Sidebar Theme
  • In the bottom of the window, look for a "customize your theme and share it with others" link
  • Copy and paste the values below:
    • #0f111b,#7A5CCC,#7A5CCC,#ffffff,#16172D,#ecf0c1,#5CCC96,#00A3CC,#0f111b,#ecf0c1

Tmux

Checkout some tmux config inspiration here at the terminal repo. Or if you're in a rush you can use this basic one:

  # Basic color support setting
  set-option -g default-terminal "screen-256color"

  # Default bar color
  set-option -g status-style bg='#1b1c36',fg='#ecf0c1'

  # Active Pane
  set -g pane-active-border-style "fg=#5ccc96"

  # Inactive Pane
  set -g pane-border-style "fg=#686f9a"

  # Active window
  set-option -g window-status-current-style bg='#686f9a',fg='#ffffff'

  # Message
  set-option -g message-style bg='#686f9a',fg='#ecf0c1'
  set-option -g message-command-style bg='#686f9a',fg='#ecf0c1'

  # When Commands are run
  set -g message-style "fg=#0f111b,bg=#686f9a"

Troubleshooting ๐Ÿ”ง

True color

Make sure you are using a terminal emulator that supports truecolor.

Read more about truecolor support here.

Colors don't look right

If you are running vim within tmux, you may run into some truecolor issues.

To fix, add this to you tmux.conf:

    set -g terminal-overrides ',xterm-256color:Tc'
    set -g default-terminal "tmux-256color"
    set -as terminal-overrides ',xterm*:sitm=\E[3m'

And in your .bash_profile or .zshrc:

  export TERM="xterm-256color"

Screenshots ๐Ÿ“ธ

COC-Explorer, HTML, Vista

Screenshot of spaceduck theme using HTML



Credit to u/addisonbean for Arch Desktop Inspo

Screenshot of spaceduck theme on Arch



Credit to u/malthusthomas for SPT on terminal

Screenshot of spaceduck theme on SPT



Credits ๐Ÿ’ณ

Contribute ๐Ÿ™

If you'd like to contribute please reach out! I don't know what I'm doing. Try to send a screenshot when posting issues as well. If you port it to whatever you're using, send me a link so I can link it here!

Vim Estilo

I currently use estilo to manage colors for Vim/Neovim, please install the dependencies to compile the colors specified in the YAML into the color scheme.

To find the current syntax element under the cursor, I use this mapping which maps Ctrl+a to find the id under the cursor:

" Show syntax color highlighting groups for word under cursor
    nmap <c-a> :call <SID>SynStack()<CR>
    function! <SID>SynStack()
      if !exists("*synstack")
        return
      endif
      echo map(synstack(line('.'), col('.')), 'synIDattr(v:val, "name")')
    endfunction

This will show you the syntax ID to where we can then modify the color of that word.

Testing colors look good

  • To test that colors look good, you can run: :source $VIMRUNTIME/syntax/hitest.vim this will open a buffer of all color groups defined!
  • Check current defined colors in buffer :highlight or :hi for short.
  • Looking for more syntax elements? Check out $VIMRUNTIME/syntax/ for all of vim's language support.

TODO

Check out my Todo list

More Repositories

1

spaceduck-terminal

๐Ÿš€ ๐Ÿฆ†Spaceduck theme but for terminal!
CSS
99
star
2

dotfiles

๐Ÿ–ฅ โšซ๏ธ ๐Ÿ—‚ my dotfiles
Lua
10
star
3

resume

My Pandoc Resume in every form known to man, and some forms known to chimpanzees...
TeX
3
star
4

pineapplegiant.github.io

My personal website! โšก๏ธ
HTML
3
star
5

doggo-promise

A simple card game with doggos ๐Ÿพ
JavaScript
2
star
6

pinafocus

๐Ÿ A cute, accessible, pineapple pomodoro web app built in vanilla JS for the homies
CSS
2
star
7

1-fcc-tribute-page

FreeCodeCamp Projects - Tribute page
HTML
1
star
8

3-fcc-product-landing-page

My FCC Product Landing Page Project
HTML
1
star
9

anime_next

Your next anime. At your fingertips
Python
1
star
10

4-fcc-tech-doc-page

My FreeCodeCamp Technical Documentation Page
HTML
1
star
11

vim-to-notion

My very bad script to upload my local Markdown pages to notion
Python
1
star
12

search-spring

search springly fashion ๐Ÿฅ‚
JavaScript
1
star
13

joe

joe's site
1
star
14

portfolio

raw html/css designs
CSS
1
star
15

hackabull2021-intro-to-web-dev

hackabull2021-intro-to-web-dev ๐ŸคŸ๐Ÿ‚ ๐Ÿ–ฅ โšก๏ธ
JavaScript
1
star
16

5-fcc-portfolio-design

My FCC Personal Portfolio Webpage design
HTML
1
star
17

finishedSite

Hackabull2019 finished hugo site for the homies ๐Ÿค˜
1
star
18

vanilla-calculator-app

La calculadora mรกs bรกsica ๐Ÿค“
CSS
1
star
19

color-palette

A place to organize colors ๐ŸŽจ
JavaScript
1
star
20

pineapplegiant

personal readme!
1
star
21

2-fcc-survey-form

My FCC Survey Form Project
HTML
1
star