├── .gitignore ├── atom ├── install.sh └── atom-package-list.txt ├── README.md ├── sublime ├── snippets │ ├── wf_shebang_swift.sublime-snippet │ ├── wf_printf_java.sublime-snippet │ ├── wf_pypy_py.sublime-snippet │ ├── wf_doc_comment_java.sublime-snippet │ ├── wf_gcd_go.sublime-snippet │ ├── wf_gcd_py.sublime-snippet │ ├── wf_digitAtIndex_go.sublime-snippet │ ├── wf_coprime_py.sublime-snippet │ ├── wf_print_red_py.sublime-snippet │ ├── wf_print_green_py.sublime-snippet │ ├── wf_print_purple_py.sublime-snippet │ ├── wf_digitAtIndex_py.sublime-snippet │ ├── ms_gcd_java.sublime-snippet │ ├── ms_isSquare_java.sublime-snippet │ ├── wf_ispalindrome_go.sublime-snippet │ ├── wf_factors_py.sublime-snippet │ ├── ms_time_java.sublime-snippet │ ├── wf_isprime_py.sublime-snippet │ ├── ms_angleBetweenPoints_java.sublime-snippet │ ├── ms_polarToCartesian_java.sublime-snippet │ ├── wf_isprime_go.sublime-snippet │ ├── wf_reverse_py.sublime-snippet │ ├── wf_binary_search_py.sublime-snippet │ ├── wf_replace_digit_py.sublime-snippet │ ├── ms_areaOfTriangle_java.sublime-snippet │ ├── ms_extended_euclidean_java.sublime-snippet │ ├── wf_palindrome_py.sublime-snippet │ ├── ms_isPrime_java.sublime-snippet │ ├── ms_stack_java.sublime-snippet │ ├── wf_quit_code_java.sublime-snippet │ ├── wf_isprime_rabin_py.sublime-snippet │ ├── ms_angleOfCorner_java.sublime-snippet │ ├── ms_generatePascalTriangle_java.sublime-snippet │ ├── wf_print_color_java.sublime-snippet │ ├── ms_queue_java.sublime-snippet │ ├── ms_circleFrom2PointsAndRadius_java.sublime-snippet │ ├── ms_triangleContainsPoint_java.sublime-snippet │ ├── testSuite │ │ ├── go │ │ │ ├── eulerMethods.go │ │ │ └── eulerMethods_test.go │ │ └── python │ │ │ ├── testRabinMiller.py │ │ │ ├── testFactors.py │ │ │ └── testPhi.py │ ├── ms_closestPointToLine_java.sublime-snippet │ ├── wf_sieve_eratosthenes_py.sublime-snippet │ ├── ms_floydWarshall_java.sublime-snippet │ ├── README.md │ ├── ms_nextPermutation_java.sublime-snippet │ ├── ms_circleFrom3Points_java.sublime-snippet │ ├── ms_arePermutations_java.sublime-snippet │ ├── ms_intersection_java.sublime-snippet │ ├── wf_genPythagoreanTriple.sublime-snippet │ ├── ms_areaOfPolygon_java.sublime-snippet │ ├── ms_kruskals_java.sublime-snippet │ ├── ms_prime_sieve_java.sublime-snippet │ ├── ms_editDistance_java.sublime-snippet │ ├── installSnippets │ ├── ms_union_find_java.sublime-snippet │ ├── ms_prims_java.sublime-snippet │ ├── ms_dijkstraPriorityQueue_java.sublime-snippet │ ├── wf_prime_factorization_py.sublime-snippet │ ├── ms_stronglyConnectedComponents.sublime-snippet │ ├── wf_phi_py.sublime-snippet │ ├── ms_primefactorization_java.sublime-snippet │ ├── ms_fordFulkersonMaxFlow.sublime-snippet │ ├── ms_fordFulkersonMinCut.sublime-snippet │ ├── ms_array_java.sublime-snippet │ ├── ms_dijkstra_java.sublime-snippet │ ├── ms_bellman_ford_java.sublime-snippet │ ├── ms_convexHull_java.sublime-snippet │ └── ms_segment_tree_java.sublime-snippet ├── settings │ ├── Java.sublime-settings │ ├── Default (OSX).sublime-keymap │ └── Preferences.sublime-settings ├── keybindings │ ├── Default (OSX).sublime-keymap │ ├── Default (Linux).sublime-keymap │ └── installKeyBindings └── color_schemes │ ├── installThemes │ ├── Tomorrow_themes │ ├── Tomorrow_python.tmTheme │ ├── Tomorrow Night-William.tmTheme │ ├── Tomorrow.tmTheme │ ├── Tomorrow_go.tmTheme │ ├── Tomorrow_dark_go.tmTheme │ ├── Tomorrow-Night-Eighties.tmTheme │ ├── Tomorrow-Night.tmTheme │ ├── Tomorrow-Night-Bright.tmTheme │ └── Tomorrow-Night-Blue.tmTheme │ └── Other │ └── Aurora.tmTheme ├── fish-shell ├── README.md ├── functions │ ├── prompt_pwd.fish │ └── fish_prompt.fish ├── config.fish └── fishd.10ddb1c19e2f ├── iterm2 ├── README.md └── terminal_themes │ └── bright_lights.itermcolors ├── vim ├── vim │ ├── .netrwhist │ ├── colors │ │ ├── wombat.vim │ │ ├── slate2.vim │ │ ├── sweyla988775.vim │ │ ├── two2tango.vim │ │ ├── guardian.vim │ │ └── rupza.vim │ ├── autoload │ │ └── onedark.vim │ └── syntax │ │ └── rmd.vim └── vimrc ├── apple_computer_setup ├── monitor.startup.script.plist └── README.md ├── LICENSE ├── tmux └── tmuxconf └── hyper └── hyper.js /.gitignore: -------------------------------------------------------------------------------- 1 | fish-shell/fishd* 2 | -------------------------------------------------------------------------------- /atom/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | apm install --packages-file atom-package-list.txt 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | My personal configuration files. Feel free to snoop and take whatever you please. 2 | -------------------------------------------------------------------------------- /sublime/snippets/wf_shebang_swift.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 5 | swift 6 | source.swift 7 | 8 | -------------------------------------------------------------------------------- /sublime/snippets/wf_printf_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | pf 7 | source.java 8 | 9 | 10 | -------------------------------------------------------------------------------- /sublime/snippets/wf_pypy_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 6 | pypy 7 | source.python 8 | 9 | -------------------------------------------------------------------------------- /sublime/snippets/wf_doc_comment_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | doccomment --> 12 | source.java 13 | 14 | 15 | -------------------------------------------------------------------------------- /sublime/snippets/wf_gcd_go.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 10 | wf_gcd 11 | source.go 12 | -------------------------------------------------------------------------------- /sublime/snippets/wf_gcd_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 8 | wf_gcd 9 | source.python 10 | 11 | -------------------------------------------------------------------------------- /fish-shell/README.md: -------------------------------------------------------------------------------- 1 | ## :fish: Fish shell configuration :fish: 2 | 3 | To install first make a backup of your config files at ~/.config/fish 4 | Then I would recommend setting up a symbolic link to the fish-shell directory. 5 | 6 | ``` 7 | ln -s dotfiles/fish-shell ~/.config/fish 8 | ``` 9 | -------------------------------------------------------------------------------- /sublime/snippets/wf_digitAtIndex_go.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 7 | wf_digitAtIndex 8 | source.go 9 | -------------------------------------------------------------------------------- /sublime/settings/Java.sublime-settings: -------------------------------------------------------------------------------- 1 | { 2 | 3 | "color_scheme" : "Packages/User/aurora.tmTheme" 4 | // "color_scheme": "Packages/User/base16-ocean.dark (SL).tmTheme" 5 | // "color_scheme": "Packages/Color Scheme - Default/Solarized (Light).tmTheme", 6 | // "color_scheme": "Packages/Neon Color Scheme/Neon.tmTheme" 7 | } -------------------------------------------------------------------------------- /sublime/snippets/wf_coprime_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 11 | wf_coprime 12 | source.python 13 | 14 | -------------------------------------------------------------------------------- /sublime/keybindings/Default (OSX).sublime-keymap: -------------------------------------------------------------------------------- 1 | [ 2 | 3 | { "keys": ["ctrl+tab"], "command": "next_view" }, 4 | { "keys": ["ctrl+shift+tab"], "command": "prev_view" } 5 | 6 | // Was: 7 | // { "keys": ["ctrl+tab"], "command": "next_view_in_stack" }, 8 | // { "keys": ["ctrl+shift+tab"], "command": "prev_view_in_stack" }, 9 | 10 | ] 11 | -------------------------------------------------------------------------------- /sublime/keybindings/Default (Linux).sublime-keymap: -------------------------------------------------------------------------------- 1 | [ 2 | 3 | { "keys": ["ctrl+tab"], "command": "next_view" }, 4 | { "keys": ["ctrl+shift+tab"], "command": "prev_view" } 5 | 6 | // Was: 7 | // { "keys": ["ctrl+tab"], "command": "next_view_in_stack" }, 8 | // { "keys": ["ctrl+shift+tab"], "command": "prev_view_in_stack" }, 9 | 10 | ] 11 | -------------------------------------------------------------------------------- /sublime/snippets/wf_print_red_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | wf_print_red 7 | 8 | source.python 9 | 10 | -------------------------------------------------------------------------------- /sublime/snippets/wf_print_green_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | wf_print_green 7 | 8 | source.python 9 | 10 | -------------------------------------------------------------------------------- /sublime/snippets/wf_print_purple_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | wf_print_purple 7 | 8 | source.python 9 | 10 | -------------------------------------------------------------------------------- /sublime/snippets/wf_digitAtIndex_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | wf_digitAtIndex 7 | 8 | source.python 9 | 10 | -------------------------------------------------------------------------------- /sublime/snippets/ms_gcd_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | static long gcd(long a, long b) { 3 | return b == 0 ? (a < 0 ? -a : a) : gcd(b, a % b); 4 | } 5 | 6 | ms_gcd 7 | 8 | source.java 9 | 10 | -------------------------------------------------------------------------------- /sublime/snippets/ms_isSquare_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | boolean isSquare(int n) { 3 | double sqrt = Math.sqrt(n); 4 | return (int) sqrt == sqrt; 5 | } 6 | 7 | ms_isSquare 8 | 9 | source.java 10 | 11 | -------------------------------------------------------------------------------- /sublime/snippets/wf_ispalindrome_go.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 16 | wf_ispalindrome 17 | source.go 18 | -------------------------------------------------------------------------------- /sublime/snippets/wf_factors_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 18 | wf_factors 19 | source.python 20 | 21 | -------------------------------------------------------------------------------- /sublime/snippets/ms_time_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | long start = System.nanoTime(); 3 | for (int i = 0; i < ${1:ITER_MAX}; i++ ) { 4 | ${0:CODE} 5 | } 6 | long end = System.nanoTime(); 7 | System.out.println( (end-start)/1e9 ); 8 | 9 | ms_time 10 | 11 | source.java 12 | 13 | -------------------------------------------------------------------------------- /sublime/snippets/wf_isprime_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 17 | wf_isprime 18 | source.python 19 | 20 | -------------------------------------------------------------------------------- /sublime/snippets/ms_angleBetweenPoints_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | // Find the angle from point A to point B in radians 3 | static double angleBetweenPoints(Point2D a, Point2D b) { 4 | return Math.atan2(b.getY() - a.getY(), b.getX() - a.getX()); 5 | } 6 | 7 | ms_angleBetweenPoints 8 | 9 | source.java 10 | 11 | -------------------------------------------------------------------------------- /sublime/snippets/ms_polarToCartesian_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | static Point2D polarToCartesian(double degrees, double radius) { 3 | double radians = Math.toRadians(degrees); 4 | return new Point2D.Double(radius*Math.cos(radians), radius*Math.sin(radians)); 5 | } 6 | 7 | ms_polarToCartesian 8 | 9 | source.java 10 | 11 | -------------------------------------------------------------------------------- /sublime/snippets/wf_isprime_go.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 22 | wf_isprime 23 | source.go 24 | 25 | -------------------------------------------------------------------------------- /sublime/snippets/wf_reverse_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 54321 5 | # 340 --> 43 6 | def reverse(n): 7 | d,r = 0,0 8 | while n > 0: 9 | d = n%10 10 | r = r*10 + d 11 | n = n // 10 12 | return r 13 | ]]> 14 | 15 | wf_reverse 16 | 17 | source.python 18 | 19 | -------------------------------------------------------------------------------- /sublime/snippets/wf_binary_search_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | key: return _binarySearch(arr, key, low, mid - 1 ) 12 | elif arr[mid] < key: return _binarySearch(arr, key, mid + 1, high ) 13 | else: return True 14 | 15 | return _binarySearch(arr, key, 0, len(arr)-1) 16 | ]]> 17 | wf_binary_search 18 | source.python 19 | 20 | -------------------------------------------------------------------------------- /sublime/snippets/wf_replace_digit_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | wf_replaceDigitAtIndex 12 | 13 | source.python 14 | 15 | -------------------------------------------------------------------------------- /sublime/snippets/ms_areaOfTriangle_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | static double area(Point2D a, Point2D b, Point2D c) { 3 | double temp1 = a.getX()*(b.getY() - c.getY()); 4 | double temp2 = b.getX()*(c.getY() - a.getY()); 5 | double temp3 = c.getX()*(a.getY() - b.getY()); 6 | return Math.abs(temp1 + temp2 + temp3)/2.0; 7 | } 8 | 9 | ms_areaOfTriangle 10 | 11 | source.java 12 | 13 | -------------------------------------------------------------------------------- /sublime/settings/Default (OSX).sublime-keymap: -------------------------------------------------------------------------------- 1 | [ 2 | 3 | { 4 | "keys" : ["ctrl+tab"], 5 | "command" : "next_view" 6 | }, 7 | 8 | { 9 | "keys": ["ctrl+shift+tab"], 10 | "command": "prev_view" 11 | }, 12 | 13 | // Skip over left brackets with tab 14 | { "keys": ["tab"], "command": "move", "args": {"by": "characters", "forward": true}, "context": 15 | [ 16 | { "key": "following_text", "operator": "regex_contains", "operand": "^[)}'\"\\]]", "match_all": true }, 17 | { "key": "auto_complete_visible", "operator": "equal", "operand": false } 18 | ] 19 | }, 20 | 21 | ] 22 | -------------------------------------------------------------------------------- /sublime/snippets/ms_extended_euclidean_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | static long[] egcd(long a, long b) { 4 | if (b == 0) 5 | return new long[] { a, 1, 0 }; 6 | else { 7 | long[] ret = egcd(b, a % b); 8 | long tmp = ret[1] - ret[2] * (a / b); 9 | ret[1] = ret[2]; 10 | ret[2] = tmp; 11 | return ret; 12 | } 13 | } 14 | 15 | 16 | ms_extended_euclidean_algorithm 17 | 18 | source.java 19 | 20 | -------------------------------------------------------------------------------- /sublime/snippets/wf_palindrome_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 20 | 21 | wf_palindrome 22 | 23 | source.python 24 | 25 | -------------------------------------------------------------------------------- /sublime/snippets/ms_isPrime_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | static boolean isPrime(final long n) { 3 | 4 | if (n < 2) return false; 5 | if (n == 2 || n == 3) return true; 6 | if (n % 2 == 0 || n % 3 == 0) return false; 7 | long limit = (long) Math.sqrt(n); 8 | for (long i = 5; i <= limit; i += 6) 9 | if (n % i == 0 || n % (i + 2) == 0) 10 | return false; 11 | return true; 12 | 13 | } 14 | 15 | ms_isPrime 16 | 17 | source.java 18 | 19 | -------------------------------------------------------------------------------- /sublime/snippets/ms_stack_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | class S { 3 | private ${1:TYPE} [] ar; 4 | private int pos = 0; 5 | public S(int max_sz) { ar = new ${1:TYPE}[max_sz]; } 6 | public int size() { return pos; } 7 | public boolean isEmpty() { return pos == 0; } 8 | public ${1:TYPE} peek() { return ar[pos-1]; } 9 | public void push(${1:TYPE} value) { ar[pos++] = value; } 10 | public ${1:TYPE} pop() { return ar[--pos]; } 11 | } 12 | 13 | ms_stack 14 | 15 | source.java 16 | 17 | -------------------------------------------------------------------------------- /sublime/snippets/wf_quit_code_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | wf_quit_code 18 | 19 | source.java 20 | 21 | -------------------------------------------------------------------------------- /iterm2/README.md: -------------------------------------------------------------------------------- 1 | ## Themes 2 | Select a theme from: https://github.com/mbadolato/iTerm2-Color-Schemes 3 | 4 | ## OSX Instructions: 5 | 6 | To make iterm2 work correctly with fish to delete words with option-delete and option-d make sure you set left option to act as +Escape under profile -> keys. See [this]( 7 | https://github.com/fish-shell/fish-shell/issues/2124) fish shell post. 8 | 9 | ## Profile 10 | 11 | Copy this config to the iterm2 condig location: 12 | 13 | cp ~/Desktop/github/dotfiles/iterm2/terminal_profile/com.googlecode.iterm2.plist ~/Library/Preferences/com.googlecode.iterm2.plist 14 | 15 | See [this](https://stackoverflow.com/questions/22943676/how-to-export-iterm2-profiles) Stackoverflow post. 16 | 17 | 18 | -------------------------------------------------------------------------------- /sublime/snippets/wf_isprime_rabin_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | >=1 10 | for _ in xrange(certainty): 11 | a=random.randrange(p-1)+1 12 | temp=s 13 | mod=pow(a,temp,p) 14 | while(temp!=p-1 and mod!=1 and mod!=p-1): 15 | mod=(mod*mod)%p 16 | temp<<=1 17 | if(mod!=p-1 and (temp&1)==0): return False 18 | return True 19 | ]]> 20 | wf_isprime_rabin 21 | source.python 22 | 23 | -------------------------------------------------------------------------------- /sublime/snippets/ms_angleOfCorner_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | // Returns the angle of the corner ABC in radians (0 <= return_value <= PI) 3 | // NOTE: Something doesn't quite look right here.... 4 | static double angleOfCorner(Point2D a, Point2D b, Point2D c) { 5 | double TWO_PI = Math.PI*2.0; 6 | double angle1 = findAngleBetweenPoints(a, b); 7 | double angle2 = findAngleBetweenPoints(b, c); 8 | return Math.PI - (((angle1 - angle2) % TWO_PI + TWO_PI) % TWO_PI); 9 | } 10 | 11 | ms_angleOfCorner 12 | 13 | source.java 14 | 15 | -------------------------------------------------------------------------------- /vim/vim/.netrwhist: -------------------------------------------------------------------------------- 1 | let g:netrw_dirhistmax =10 2 | let g:netrw_dirhist_cnt =8 3 | let g:netrw_dirhist_1='/home/william/Desktop/GitHub/kattis_problems/catenyms' 4 | let g:netrw_dirhist_2='/home/william/Desktop/GitHub/kattis_problems/comparinganswers' 5 | let g:netrw_dirhist_3='/home/william/.vim' 6 | let g:netrw_dirhist_4='/home/william/Dropbox/Programming/Competitions/Kattis/Big_Theta_Three_Practice_5/transportation' 7 | let g:netrw_dirhist_5='/home/william/Dropbox/Programming/Competitions/Kattis/Big_Theta_Three_Practice_5' 8 | let g:netrw_dirhist_6='/home/william/Dropbox/Programming/Competitions/Kattis/Big_Theta_Three_Practice_5/transportation' 9 | let g:netrw_dirhist_7='/home/william/.config/fish/functions' 10 | let g:netrw_dirhist_8='/home/william/.config/fish.bak' 11 | -------------------------------------------------------------------------------- /sublime/snippets/ms_generatePascalTriangle_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | // Note: Switch to BigInteger if you want to generate more than 67 rows 3 | static long[][] generatePascalTriangle(int nRows) { 4 | 5 | long[][] arr = new long[nRows][nRows]; 6 | 7 | arr[0][0] = 1; 8 | 9 | for (int y = 1; y < nRows; y++) { 10 | 11 | arr[y][0] = arr[y - 1][0]; 12 | 13 | for (int x = 1; x ≤ y; x++) 14 | arr[y][x] = arr[y - 1][x - 1] + arr[y - 1][x]; 15 | 16 | } 17 | 18 | return arr; 19 | 20 | } 21 | 22 | ms_generatePascalTriangle 23 | 24 | source.java 25 | 26 | -------------------------------------------------------------------------------- /sublime/snippets/wf_print_color_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 16 | wf_print_color 17 | source.java 18 | 19 | -------------------------------------------------------------------------------- /sublime/snippets/ms_queue_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | class Q { 3 | private ${1:TYPE} [] ar; 4 | private int f, e, sz; 5 | public Q(int max_sz) { f = e = 0; ar = new ${1:TYPE}[(sz = max_sz+1)]; } 6 | public ${1:TYPE} peek() { return ar[f]; } 7 | public boolean isEmpty() { return f == e; } 8 | public int size() { return (f > e ? (e + sz - f) : (e - f)); } 9 | public void enqueue(${1:TYPE} v) { ar[e] = v; if (++e == sz) e = 0; } 10 | public ${1:TYPE} dequeue() {${1:TYPE} v = ar[f]; if (++f == sz) f = 0; return v; } 11 | } 12 | 13 | ms_queue 14 | 15 | source.java 16 | 17 | -------------------------------------------------------------------------------- /sublime/keybindings/installKeyBindings: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # These the are places where sublime is installed by default 4 | SUBLIME2_MAC="$HOME/Library/Application Support/Sublime Text 2/Packages/User/" 5 | SUBLIME3_MAC="$HOME/Library/Application Support/Sublime Text 3/Packages/User/" 6 | 7 | SUBLIME2_LINUX="$HOME/.config/sublime-text-2/Packages/User" 8 | SUBLIME3_LINUX="$HOME/.config/sublime-text-3/Packages/User" 9 | 10 | # Copy all the snippets to those directories 11 | cp *.sublime-keymap "${SUBLIME2_MAC}" 2> /dev/null 12 | cp *.sublime-keymap "${SUBLIME3_MAC}" 2> /dev/null 13 | 14 | cp *.sublime-keymap "${SUBLIME2_LINUX}" 2> /dev/null 15 | cp *.sublime-keymap "${SUBLIME3_LINUX}" 2> /dev/null 16 | 17 | echo 18 | echo "Updated Keybindings in Sublime! You May need to restart your editor to see changes take place." 19 | echo 20 | -------------------------------------------------------------------------------- /sublime/snippets/ms_circleFrom2PointsAndRadius_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | // Note: plus=TRUE gives one possible point, plus=FALSE gives the other possible point 3 | static Point2D findCenter(double a, double b, double c, double d, double r, boolean plus) { 4 | double q = Math.sqrt((a-c)*(a-c) + (b-d)*(b-d)); 5 | double x3 = (a+c)/2.0; 6 | double y3 = (b+d)/2.0; 7 | double temp = Math.sqrt(r*r-(q/2.0)*(q/2.0)); 8 | if (plus) 9 | return new Point2D.Double(x3 + temp*(b-d)/q, y3 + temp*(c-a)/q); 10 | return new Point2D.Double(x3 - temp*(b-d)/q, y3 - temp*(c-a)/q); 11 | } 12 | 13 | ms_circleFrom2PointsAndRadius 14 | 15 | source.java 16 | 17 | -------------------------------------------------------------------------------- /sublime/snippets/ms_triangleContainsPoint_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | static boolean containsPoint(Point2D a, Point2D b, Point2D c, double x, double y) { 3 | double ABC = Math.abs (a.getX()*(b.getY()-c.getY()) + b.getX()*(c.getY()-a.getY()) + c.getX()*(a.getY()-b.getY())); 4 | double ABP = Math.abs (a.getX()*(b.getY()-y) + b.getX()*(y-a.getY()) + x*(a.getY()-b.getY())); 5 | double APC = Math.abs (a.getX()*(y-c.getY()) + x*(c.getY()-a.getY()) + c.getX()*(a.getY()-y)); 6 | double PBC = Math.abs (x*(b.getY()-c.getY()) + b.getX()*(c.getY()-y) + c.getX()*(y-b.getY())); 7 | return ABP + APC + PBC == ABC; 8 | } 9 | 10 | ms_triangleContainsPoint 11 | 12 | source.java 13 | 14 | -------------------------------------------------------------------------------- /fish-shell/functions/prompt_pwd.fish: -------------------------------------------------------------------------------- 1 | 2 | function prompt_pwd --description "Get a shortened prompt path" 3 | set -q argv[1] 4 | and switch $argv[1] 5 | case -h --help 6 | __fish_print_help prompt_pwd 7 | return 0 8 | end 9 | 10 | # This allows overriding fish_prompt_pwd_dir_length from the outside (global or universal) without leaking it 11 | set -q fish_prompt_pwd_dir_length 12 | or set -l fish_prompt_pwd_dir_length 1 13 | 14 | # Replace $HOME with "~" 15 | set realhome ~ 16 | set -l tmp (string replace -r '^'"$realhome"'($|/)' '~$1' $PWD) 17 | 18 | if [ $fish_prompt_pwd_dir_length -eq 0 ] 19 | echo $tmp 20 | else 21 | # Shorten to at most $fish_prompt_pwd_dir_length characters per directory 22 | string replace -ar '(\.?[^/]{'"$fish_prompt_pwd_dir_length"'})[^/]*/' '$1/' $tmp 23 | end 24 | end 25 | -------------------------------------------------------------------------------- /apple_computer_setup/monitor.startup.script.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Label 6 | monitor.startup.script 7 | 8 | OnDemand 9 | 10 | 11 | UserName 12 | williamfiset 13 | 14 | GroupName 15 | WilliamFisetGroup 16 | 17 | ProgramArguments 18 | 19 | /usr/local/bin/switchaudiosource 20 | -s 21 | "LG UltraFine Display Audio" 22 | --fork 23 | --logpath 24 | /usr/local/mongo/log 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /atom/atom-package-list.txt: -------------------------------------------------------------------------------- 1 | Remote-FTP 2 | Zen 3 | apathy-theme 4 | atom-beautify 5 | atom-material-syntax 6 | atom-material-ui 7 | autocomplete 8 | autocomplete-html-entities 9 | autocomplete-java 10 | autocomplete-plus 11 | autocomplete-python 12 | busy-signal 13 | chester-atom-syntax 14 | color-picker 15 | deep-c-syntax 16 | docblockr 17 | dracula-syntax 18 | environment 19 | file-icons 20 | goto-definition 21 | highlight-line 22 | highlight-selected 23 | intentions 24 | isotope-ui 25 | kite 26 | language-ejs 27 | language-fish-shell 28 | linter 29 | linter-clang 30 | linter-htmlhint 31 | linter-jscs 32 | linter-jshint 33 | linter-mypy 34 | linter-pylint 35 | linter-ui-default 36 | octocat-syntax 37 | one-dark-ui 38 | open-recent 39 | p5js-snippets 40 | p5xjs-autocomplete 41 | pigments 42 | red-wavy-underline 43 | script 44 | set-syntax 45 | seti-syntax 46 | tabs-to-spaces 47 | tomorrow-night-eighties 48 | unity-ui 49 | 50 | -------------------------------------------------------------------------------- /sublime/snippets/testSuite/go/eulerMethods.go: -------------------------------------------------------------------------------- 1 | package eulerMethods 2 | 3 | import "math" 4 | 5 | func gcd(a int, b int) int { 6 | for b != 0 { 7 | a, b = b, a%b 8 | } 9 | return a 10 | } 11 | 12 | func isPalindrome(str *string) bool { 13 | 14 | if str != nil { 15 | length := len(*str) 16 | for i := 0; i < length/2; i++ { 17 | if (*str)[i] != (*str)[length-i-1] { 18 | return false 19 | } 20 | } 21 | } 22 | return true 23 | } 24 | 25 | func isPrime(n int64) bool { 26 | 27 | if n < 2 { 28 | return false 29 | } else if n == 2 || n == 3 { 30 | return true 31 | } else if n%2 == 0 || n%3 == 0 { 32 | return false 33 | } 34 | 35 | root := int64(math.Sqrt(float64(n)) + 1.0) 36 | for f := int64(5); f < root; f += 6 { 37 | if n%f == 0 || n%(f+2) == 0 { 38 | return false 39 | } 40 | } 41 | return true 42 | } 43 | 44 | func digitAtIndex(n int, i int) int { 45 | return (n / int(math.Pow(10.0, float64(i)))) % 10 46 | } 47 | -------------------------------------------------------------------------------- /sublime/snippets/ms_closestPointToLine_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 1 && isSegment) return b; 10 | return new Point2D.Double(a.getX() + u * dx, a.getY() + u * dy); 11 | }]]> 12 | 13 | ms_closestPointToLine 14 | 15 | source.java 16 | 17 | -------------------------------------------------------------------------------- /sublime/snippets/wf_sieve_eratosthenes_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | wf_sieve_eratosthenes 23 | 24 | source.python 25 | 26 | -------------------------------------------------------------------------------- /sublime/snippets/ms_floydWarshall_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | static void floydWarshall(double[][] dist) { 4 | 5 | int n = dist.length; 6 | 7 | // Compute shortest paths 8 | for (int k = 0; k < n; k++) 9 | for (int i = 0; i < n; i++) 10 | for (int j = 0; j < n; j++) 11 | if (dist[i][k] + dist[k][j] < dist[i][j]) 12 | dist[i][j] = dist[i][k] + dist[k][j]; 13 | 14 | // Identify negative cycles 15 | for (int k = 0; k < n; k++) 16 | for (int i = 0; i < n; i++) 17 | for (int j = 0; j < n; j++) 18 | if (dist[i][k] + dist[k][j] < dist[i][j]) 19 | dist[i][j] = Double.NEGATIVE_INFINITY; 20 | 21 | } 22 | 23 | 24 | 25 | ms_floyd_warshall 26 | 27 | source.java 28 | 29 | -------------------------------------------------------------------------------- /sublime/snippets/README.md: -------------------------------------------------------------------------------- 1 | 2 | Usage 3 | ===== 4 | 5 | 1) Run the installSnippets script and reload sublime and start using the snippets in this repo! 6 | NOTE: the installSnippets script will not work if sublime is not installed in it's default location. 7 | 8 | Snippet Guidelines: 9 | =================== 10 | 11 | 1) **prefix** your snippet with ms_ (meaning My Snippet) **initials** 12 | 13 | 2) Add an underscore and the **name of the extension of the programming language** 14 | associated with your snippet. For example, you create a Swift snippet to compute 15 | fibonacci numbers you would name the file: ms_fibonacci_swift.sublime-snippet 16 | 17 | 3) In the snippet itself make sure you file both the and 18 | fields. The <**tabtrigger**> is the name used to activate the snippet when coding 19 | and the <**scope**> is the type of file associated with the snippet (For example 20 | when coding in Java you wouldn't want Swift & Python snippets showing up). 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /sublime/snippets/ms_nextPermutation_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | > T[] nextPermutation(T[] c) { 3 | int first = getFirst(c); 4 | if (first == -1) return null; 5 | int toSwap = c.length - 1; 6 | while (c[first].compareTo(c[toSwap]) >= 0) // Change to <= for descending 7 | --toSwap; 8 | swap(c, first++, toSwap); 9 | toSwap = c.length - 1; 10 | while (first < toSwap) 11 | swap(c, first++, toSwap--); 12 | return c; 13 | } 14 | 15 | static > int getFirst(T[] c) { 16 | for (int i = c.length - 2; i >= 0; --i) 17 | if (c[i].compareTo(c[i + 1]) < 0) // Change to > for descending 18 | return i; 19 | return -1; 20 | } 21 | 22 | static > void swap(T[] c, int i, int j) { 23 | T tmp = c[i]; 24 | c[i] = c[j]; 25 | c[j] = tmp; 26 | }]]> 27 | 28 | ms_nextPermutation --> 29 | source.java 30 | 31 | 32 | -------------------------------------------------------------------------------- /sublime/snippets/ms_circleFrom3Points_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | // Returns null if no circle exists (points are on the same line) 3 | static Point2D findCenter(double x1, double y1, double x2, double y2, double x3, double y3) { 4 | if (x1 == x2 && x1 == x3) return null; 5 | if (x2 == x1 || x3 == x2) return findCenter(x3, y3, x1, y1, x2, y2); 6 | double ma = (y2 - y1)/(x2 - x1); 7 | double mb = (y3 - y2)/(x3 - x2); 8 | if (ma == mb) return null; 9 | double x = ((ma*mb*(y1 - y3)) + (mb*(x1 + x2)) - (ma*(x2 + x3))) / (2.0*(mb - ma)); 10 | double y; 11 | if (ma != 0) y = ((y1 + y2)/2.0) - ((x - (x1 + x2)/2.0)/ma); 12 | else y = ((y2 + y3)/2.0) - ((x - (x2 + x3)/2.0)/mb); 13 | return new Point2D.Double(x, y); 14 | } 15 | 16 | ms_circleFrom3Points 17 | 18 | source.java 19 | 20 | -------------------------------------------------------------------------------- /sublime/snippets/ms_arePermutations_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 25 | 26 | ms_arePermutations 27 | 28 | source.java 29 | 30 | -------------------------------------------------------------------------------- /sublime/snippets/ms_intersection_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 20 | 21 | ms_intersection --> 22 | source.java 23 | 24 | 25 | -------------------------------------------------------------------------------- /sublime/snippets/wf_genPythagoreanTriple.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | max_perimeter: break 14 | if gcd(a,b) != 1: continue 15 | if gcd(a,c) != 1: continue 16 | if gcd(b,c) != 1: continue 17 | yield (a, b, c); k = 2 18 | while True: 19 | A = a * k; B = b * k; C = c * k; ABC = A+B+C 20 | if ABC > max_perimeter: break 21 | yield (A, B, C); k += 1 22 | 23 | ]]> 24 | 25 | wf_genPythagoreanTriple 26 | 27 | source.python 28 | 29 | -------------------------------------------------------------------------------- /sublime/color_schemes/installThemes: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # These the are places where sublime is installed by default 4 | SUBLIME2_MAC="$HOME/Library/Application Support/Sublime Text 2/Packages/User/" 5 | SUBLIME3_MAC="$HOME/Library/Application Support/Sublime Text 3/Packages/User/" 6 | 7 | SUBLIME2_UBUNTU="$HOME/.config/sublime-text-2/Packages/User" 8 | SUBLIME3_UBUNTU="$HOME/.config/sublime-text-3/Packages/User" 9 | 10 | # Copy all the snippets to those directories 11 | cp Other/*.tmTheme Tomorrow_themes/*.tmTheme "${SUBLIME2_MAC}" 2> /dev/null 12 | cp Other/*.tmTheme Tomorrow_themes/*.tmTheme "${SUBLIME3_MAC}" 2> /dev/null 13 | 14 | cp Other/*.tmTheme Tomorrow_themes/*.tmTheme "${SUBLIME2_UBUNTU}" 2> /dev/null 15 | cp Other/*.tmTheme Tomorrow_themes/*.tmTheme "${SUBLIME3_UBUNTU}" 2> /dev/null 16 | 17 | echo "\nPlaced new Color-Schemes into Sublime!\n" 18 | echo "Now to change the color scheme do: \n\tPreferences->Settings - More -> Syntax Specific User" 19 | echo " 20 | Then enter this code for which ever color scheme you wish: 21 | { 22 | \"color_scheme\" : \"Packages/User/Aurora.tmTheme\" 23 | } 24 | " 25 | -------------------------------------------------------------------------------- /sublime/settings/Preferences.sublime-settings: -------------------------------------------------------------------------------- 1 | { 2 | 3 | // "color_scheme": "Packages/User/Nexus (SL) (Flake8Lint).tmTheme", 4 | "color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme", 5 | 6 | "ignored_packages": [ 7 | "JavaIME", 8 | "Vintage" 9 | ], 10 | 11 | "font_size": 22, 12 | "tab_size": 2, 13 | "highlight_line": true, 14 | "spell_check": true, 15 | 16 | "ignored_words": [], 17 | "translate_tabs_to_spaces": true, 18 | "trim_trailing_white_space_on_save": false, 19 | "word_wrap": false, 20 | 21 | "draw_white_space": "selection", // all, none, selection 22 | 23 | // this will display two vertical rulers at 80 and 120 character count 24 | "rulers": [80, 100], 25 | 26 | "caret_style": "phase", 27 | 28 | // Block cursor (does not blick :/ ) 29 | // "caret_extra_width": 15, 30 | // "caret_style": "solid", 31 | // "wide_caret": true, 32 | 33 | // Makes code fold buttons always visible. 34 | "fade_fold_buttons": false, 35 | 36 | // Bolds folder names. 37 | "bold_folder_labels": true 38 | 39 | // "font_options": ["gray_antialias"], 40 | 41 | } 42 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 William Fiset 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /sublime/snippets/ms_areaOfPolygon_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | // Points must be ordered (either clockwise or counter-clockwise) 3 | static double findAreaOfPolygon(Point2D[] pts) { 4 | double area = 0; 5 | for (int i = 1; i + 1 < pts.length; i++) 6 | area += areaOfTriangulation(pts[0], pts[i], pts[i+1]); 7 | return Math.abs(area); 8 | } 9 | 10 | // May return positive or negative value (important for polygon method) 11 | static double areaOfTriangulation(Point2D a, Point2D b, Point2D c) { 12 | return crossProduct(subtract(a, b), subtract(a, c))/2.0; 13 | } 14 | 15 | // Find the difference between two points 16 | static Point2D subtract(Point2D a, Point2D b) { 17 | return new Point2D.Double(a.getX() - b.getX(), a.getY() - b.getY()); 18 | } 19 | 20 | static double crossProduct(Point2D a, Point2D b) { 21 | return a.getX()*b.getY() - a.getY()*b.getX(); 22 | } 23 | 24 | ms_areaOfPolygon 25 | 26 | source.java 27 | 28 | -------------------------------------------------------------------------------- /sublime/snippets/ms_kruskals_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | static Double kruskals(Edge[] edges, int n) { 4 | 5 | UnionFind uf = new UnionFind(n); 6 | double sum = 0; 7 | Arrays.sort(edges); 8 | 9 | for (Edge edge : edges) { 10 | 11 | // Already connected 12 | if (uf.connected(edge.from, edge.to)) 13 | continue; 14 | 15 | // Add new edge 16 | sum += edge.w; 17 | uf.union(edge.from, edge.to); 18 | 19 | } 20 | 21 | if (uf.getSize(0) != n) 22 | return null; 23 | 24 | return sum; 25 | 26 | } 27 | 28 | class Edge implements Comparable<Edge> { 29 | 30 | int from, to; 31 | double w; 32 | public Edge(int from, int to, double w) { 33 | this.from = from; 34 | this.to = to; 35 | this.w = w; 36 | } 37 | @Override public int compareTo(Edge other) { 38 | return Double.compare(w, other.w); 39 | } 40 | } 41 | 42 | 43 | 44 | ms_kruskals_mst 45 | 46 | source.java 47 | 48 | -------------------------------------------------------------------------------- /sublime/snippets/ms_prime_sieve_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | // Gets all primes up to, but not including limit (returned as a list of primes) 4 | static int[] sieve(int limit) { 5 | 6 | if (limit <= 2) return new int[0]; 7 | final int numPrimes = (int)(1.25506 * limit / Math.log((double) limit)); 8 | int[] primes = new int[numPrimes]; 9 | int index = 0; 10 | 11 | boolean[] isComposite = new boolean[limit]; 12 | final int sqrtLimit = (int) Math.sqrt(limit); 13 | for (int i = 2; i <= sqrtLimit; i++) { 14 | if (!isComposite[i]) { 15 | primes[index++] = i; 16 | for (int j = i * i; j < limit; j += i) 17 | isComposite[j] = true; 18 | } 19 | } 20 | 21 | for (int i = sqrtLimit + 1; i < limit; i++) 22 | if (!isComposite[i]) 23 | primes[index++] = i; 24 | 25 | return java.util.Arrays.copyOf(primes, index); 26 | } 27 | 28 | 29 | 30 | ms_prime_sieve 31 | 32 | source.java 33 | 34 | -------------------------------------------------------------------------------- /sublime/snippets/ms_editDistance_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 0 && j > 0) 13 | min = arr[i-1][j-1] + (a.charAt(i-1) == b.charAt(j-1) ? 0 : substitutionCost); 14 | // Deletion 15 | if (i > 0) 16 | min = Math.min(min, arr[i-1][j] + deletionCost); 17 | // Insertion 18 | if (j > 0) 19 | min = Math.min(min, arr[i][j-1] + insertionCost); 20 | 21 | arr[i][j] = min; 22 | } 23 | 24 | for (int i = 0; i <= a.length(); i++) 25 | System.out.println(Arrays.toString(arr[i])); 26 | 27 | return arr[a.length()][b.length()]; 28 | 29 | }]]> 30 | 31 | ms_editDistance --> 32 | source.java 33 | 34 | 35 | -------------------------------------------------------------------------------- /sublime/snippets/installSnippets: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # These the are places where sublime is installed by default 4 | SUBLIME2_MAC="$HOME/Library/Application Support/Sublime Text 2/Packages/User" 5 | SUBLIME3_MAC="$HOME/Library/Application Support/Sublime Text 3/Packages/User" 6 | 7 | SUBLIME2_UBUNTU="$HOME/.config/sublime-text-2/Packages/User" 8 | SUBLIME3_UBUNTU="$HOME/.config/sublime-text-3/Packages/User" 9 | 10 | rm "${SUBLIME2_MAC}"/wf_* 2> /dev/null 11 | rm "${SUBLIME2_MAC}"/ms_* 2> /dev/null 12 | 13 | rm "${SUBLIME3_MAC}"/wf_* 2> /dev/null 14 | rm "${SUBLIME3_MAC}"/ms_* 2> /dev/null 15 | 16 | rm "${SUBLIME2_UBUNTU}"/ms_* 2> /dev/null 17 | rm "${SUBLIME2_UBUNTU}"/wf_* 2> /dev/null 18 | 19 | rm "${SUBLIME3_UBUNTU}"/ms_* 2> /dev/null 20 | rm "${SUBLIME3_UBUNTU}"/wf_* 2> /dev/null 21 | 22 | # Copy all the snippets to those directories 23 | cp *.sublime-snippet "${SUBLIME2_MAC}" 2> /dev/null 24 | cp *.sublime-snippet "${SUBLIME3_MAC}" 2> /dev/null 25 | 26 | cp *.sublime-snippet "${SUBLIME2_UBUNTU}" 2> /dev/null 27 | cp *.sublime-snippet "${SUBLIME3_UBUNTU}" 2> /dev/null 28 | 29 | # Update Atom Snippets 30 | cp snippets.cson ~/.atom/ 2> /dev/null 31 | 32 | echo "\nUpdates Snippets for in Sublime and Atom! You May need to restart your editor to see changes take place.\n" 33 | -------------------------------------------------------------------------------- /sublime/snippets/testSuite/python/testRabinMiller.py: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/pypy 2 | # -*- coding: utf-8 -*- 3 | 4 | # def isprime(n): 5 | # return rabin_miller(n) 6 | 7 | import random 8 | from Queue import Queue 9 | 10 | # Tested up to 500 million 11 | def rabin_miller(p): 12 | if(p<2): return False 13 | if(p!=2 and p%2==0): return False 14 | s=p-1 15 | while(s%2==0): s>>=1 16 | for _ in xrange(10): 17 | a=random.randrange(p-1)+1 18 | temp=s 19 | mod=pow(a,temp,p) 20 | while(temp!=p-1 and mod!=1 and mod!=p-1): 21 | mod=(mod*mod)%p 22 | temp=temp*2 23 | if(mod!=p-1 and temp%2==0): return False 24 | return True 25 | 26 | 27 | # Known working isprime method 28 | def isprime(n): 29 | 30 | if n < 2: return False 31 | elif n in (2, 3): return True 32 | elif n % 2 == 0 or n % 3 == 0: return False 33 | 34 | root = int(n**0.5)+1 35 | 36 | for f in xrange( 5, root, 6): 37 | if n % f == 0 or n % (f+2) == 0: 38 | return False 39 | 40 | return True 41 | 42 | # Tested n up to 500m 43 | n = 0 44 | while True: 45 | if rabin_miller(n) != isprime(n): 46 | print "rabin_miller failed at:", n 47 | break 48 | if n % 500000 == 0: print n 49 | n += 1 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /apple_computer_setup/README.md: -------------------------------------------------------------------------------- 1 | 2 | # Set keyboard speeds. First inspect current values: 3 | ``` 4 | defaults read -g KeyRepeat 5 | defaults read -g InitialKeyRepeat 6 | ``` 7 | 8 | # Update values to something sensible: 9 | ``` 10 | defaults write -g InitialKeyRepeat -int 15 11 | defaults write -g KeyRepeat -int 2 12 | ``` 13 | 14 | # Configure sound to come out of monitor 15 | 16 | https://soundmacguy.wordpress.com/2017/11/08/setting-the-default-sound-device-automatically-switchaudiosoruce 17 | 18 | ``` 19 | brew install switchaudio-osx 20 | switchaudiosource -a 21 | LG UltraFine Display Audio (output) 22 | Mac mini Speakers (output) 23 | ``` 24 | 25 | # Switch output source: 26 | ``` 27 | switchaudiosource -s "LG UltraFine Display Audio" 28 | ``` 29 | # Monitor sound script 30 | 31 | The sound output source doesn't persist for some reason between startups 32 | so one option is to setup a startup script to set the sound to output from 33 | the monitor instead of Mac Mini: 34 | 35 | ``` 36 | sudo cp /location/of/monitor.startup.script.plist /Library/LaunchAgents/monitor.startup.script.plist 37 | sudo chown root:wheel /Library/LaunchAgents/monitor.startup.script.plist 38 | sudo chmod o-w /Library/LaunchAgents/monitor.startup.script.plist 39 | sudo launchctl load /Library/LaunchAgents/monitor.startup.script.plist 40 | ``` -------------------------------------------------------------------------------- /sublime/snippets/ms_union_find_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | class UnionFind { 4 | int[] id; 5 | int[] sz; 6 | public UnionFind(int n) { 7 | id = new int[n]; 8 | sz = new int[n]; 9 | for (int i = 0; i < n; i++) { 10 | id[i] = i; 11 | sz[i] = 1; 12 | } 13 | } 14 | 15 | int find(int p) { 16 | int root = p; 17 | while (root != id[root]) 18 | root = id[root]; 19 | while (p != root) { // Do path compression 20 | int next = id[p]; 21 | id[p] = root; 22 | p = next; 23 | } 24 | return root; 25 | } 26 | 27 | boolean connected(int p, int q) { 28 | return find(p) == find(q); 29 | } 30 | 31 | int getSize(int p) { 32 | return sz[find(p)]; 33 | } 34 | 35 | void union(int p, int q) { 36 | int root1 = find(p); 37 | int root2 = find(q); 38 | if (root1 == root2) return; 39 | if (sz[root1] < sz[root2]) { 40 | sz[root2] += sz[root1]; 41 | id[root1] = root2; 42 | } else { 43 | sz[root1] += sz[root2]; 44 | id[root2] = root1; 45 | } 46 | } 47 | 48 | } 49 | 50 | 51 | 52 | ms_union_find 53 | 54 | source.java 55 | 56 | -------------------------------------------------------------------------------- /sublime/snippets/ms_prims_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | static long prims(int[][] dist) { 3 | long total = 0; 4 | boolean[] isConnected = new boolean[n]; 5 | isConnected[0] = true; 6 | // Initialize the minimum distances from the starting node 7 | int[] minDist = new int[n]; 8 | for (int i = 1; i < n; i++) 9 | minDist[i] = dist[0][i]; 10 | // Greedily add shortest edge from connected part to disconnect part each time 11 | for (int nConnected = 1; nConnected < n; nConnected++) { 12 | // Find smallest distance 13 | int smallest = Integer.MAX_VALUE; 14 | int index = -1; 15 | for (int i = 0; i < n; i++) 16 | if (!isConnected[i] && minDist[i] < smallest) { 17 | smallest = minDist[i]; 18 | index = i; 19 | } 20 | // Connect to selected node 21 | isConnected[index] = true; 22 | total += smallest; 23 | // Update minimum distances 24 | for (int i = 0; i < n; i++) 25 | if (!isConnected[i]) 26 | minDist[i] = Math.min(minDist[i], dist[index][i]); 27 | } 28 | return total; 29 | } 30 | 31 | ms_prims 32 | 33 | source.java 34 | 35 | 36 | -------------------------------------------------------------------------------- /sublime/snippets/ms_dijkstraPriorityQueue_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | // Using adjacency matrix 3 | static int dijkstra(Integer[][] weights, int n, int start, int end) { 4 | int[] dist = new int[n]; 5 | Arrays.fill(dist, INFINITY); 6 | dist[start] = 0; 7 | PriorityQueue<Node> q = new PriorityQueue<Node>(); 8 | q.offer(new Node(start, 0)); 9 | while (q.size() > 0) { 10 | Node node = q.poll(); 11 | if (dist[node.index] < node.dist) continue; // Check to see if its stale 12 | if (node.index == end) return node.dist; // Reached destination 13 | for (int i = 0; i < n; i++) 14 | if (weights[node.index][i] != null) { 15 | int newDist = dist[node.index] + weights[node.index][i]; 16 | if (newDist < dist[i]) { 17 | dist[i] = newDist; 18 | q.offer(new Node(i, newDist)); 19 | } 20 | } 21 | } 22 | return -1; // Does not connect 23 | } 24 | class Node implements Comparable<Node> { 25 | int index, dist; 26 | public Node(int index, int dist) { 27 | this.index = index; this.dist = dist; 28 | } 29 | @Override public int compareTo(Node other) { 30 | return ((Integer) dist).compareTo(other.dist); 31 | } 32 | } 33 | 34 | ms_dijkstraPriorityQueue 35 | 36 | source.java 37 | 38 | -------------------------------------------------------------------------------- /sublime/snippets/wf_prime_factorization_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | >=1 17 | for _ in xrange(10): 18 | a=random.randrange(p-1)+1 19 | temp=s 20 | mod=pow(a,temp,p) 21 | while(temp!=p-1 and mod!=1 and mod!=p-1): 22 | mod=(mod*mod)%p 23 | temp=temp*2 24 | if(mod!=p-1 and temp%2==0): return False 25 | return True 26 | 27 | def pollard_rho(n): 28 | if(n%2==0): return 2; 29 | x=random.randrange(2,1000000) 30 | c=random.randrange(2,1000000) 31 | y=x 32 | d=1 33 | while(d==1): 34 | x=(x*x+c)%n 35 | y=(y*y+c)%n 36 | y=(y*y+c)%n 37 | d=gcd(x-y,n) 38 | if(d==n): break; 39 | return d; 40 | 41 | ''' Tested up to 23000000 ''' 42 | def primeFactorization(n): 43 | if n <= 0: raise ValueError("Fucked up input, n <= 0") 44 | elif n == 1: return [] 45 | queue = Queue() 46 | factors=[] 47 | queue.put(n) 48 | while(not queue.empty()): 49 | l=queue.get() 50 | if(isprime(l)): 51 | factors.append(l) 52 | continue 53 | d=pollard_rho(l) 54 | if(d==l):queue.put(l) 55 | else: 56 | queue.put(d) 57 | queue.put(l/d) 58 | return factors 59 | ]]> 60 | wf_prime_factorization 61 | source.python 62 | 63 | -------------------------------------------------------------------------------- /fish-shell/config.fish: -------------------------------------------------------------------------------- 1 | set fish_greeting '' 2 | 3 | # Export statments 4 | 5 | # Adds '.' to $CLASSPATH if it's not already there. 6 | if not contains . $CLASSPATH 7 | set -x CLASSPATH . $CLASSPATH 8 | end 9 | 10 | # Adds '.' to $PATH if it's not already there. 11 | if not contains . $PATH 12 | set -x PATH . $PATH 13 | end 14 | 15 | ### Abbreviations ### 16 | 17 | # Command shortcuts 18 | abbr -a l ls -F 19 | abbr -a ll ls -lhF 20 | abbr -a la ls -ahF 21 | 22 | # Git commands 23 | abbr -a gita git add -A 24 | abbr -a gits git status 25 | abbr -a gitc git commit -m 26 | abbr -a gitp git push 27 | abbr -a gitl "git log --oneline -n 10" 28 | 29 | abbr -a c cd 30 | abbr -a .. cd .. 31 | abbr -a ... cd ../.. 32 | abbr -a .... cd ../../.. 33 | abbr -a ..... cd ../../../.. 34 | abbr -a ...... cd ../../../../.. 35 | abbr -a ....... cd ../../../../../.. 36 | 37 | # Path shortcuts 38 | abbr -a kat cd ~/Dropbox/Programming/Competitions/Kattis 39 | abbr -a drive cd ~/Google\ Drive/ 40 | abbr -a euler cd ~/Dropbox/Programming/Project_Euler/WIP 41 | abbr -a uni cd ~/Dropbox/University/ 42 | abbr -a drop cd ~/Dropbox 43 | abbr -a github cd ~/Desktop/GitHub 44 | abbr -a desk cd ~/Desktop 45 | abbr -a comp cd ~/Dropbox/Programming/Competitions 46 | 47 | # Make directory and cd into it 48 | function mkcd 49 | mkdir -p $argv; and cd $argv 50 | end 51 | 52 | # The next line updates PATH for the Google Cloud SDK. 53 | if [ -f '/Users/williamfiset/Downloads/google-cloud-sdk/path.fish.inc' ]; if type source > /dev/null; source '/Users/williamfiset/Downloads/google-cloud-sdk/path.fish.inc'; else; . '/Users/williamfiset/Downloads/google-cloud-sdk/path.fish.inc'; end; end 54 | -------------------------------------------------------------------------------- /sublime/snippets/ms_stronglyConnectedComponents.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | // Remove all bridges 3 | boolean removed = true; 4 | while (removed) { 5 | removed = false; 6 | for (int i = 0; i < n; i++) 7 | for (int j = 0; j < n; j++) 8 | if (arr[i][j] && isBridge(arr, j, i, new boolean[n])) { 9 | arr[i][j] = false; 10 | removed = true; 11 | } 12 | } 13 | 14 | // Find largest connected component 15 | int max = 0; 16 | boolean[] visited = new boolean[n]; 17 | for (int i = 0; i < n; i++) 18 | if (!visited[i]) { 19 | int size = findSize(arr, i, visited); 20 | max = Math.max(max, size); 21 | } 22 | 23 | static int findSize(boolean[][] arr, int cur, boolean[] visited) { 24 | int total = 0; 25 | visited[cur] = true; 26 | for (int i = 0; i < arr.length; i++) 27 | if (!visited[i] && arr[cur][i]) total += findSize(arr, i, visited); 28 | return total + 1; 29 | } 30 | static boolean isBridge(boolean[][] arr, int cur, int target, boolean[] visited) { 31 | if (cur == target) return false; 32 | visited[cur] = true; 33 | for (int i = 0; i < arr.length; i++) 34 | if (!visited[i] && arr[cur][i]) { 35 | boolean result = isBridge(arr, i, target, visited); 36 | if (!result) return false; 37 | } 38 | return true; 39 | } 40 | 41 | ms_stronglyConnectedComponenets 42 | 43 | source.java 44 | 45 | -------------------------------------------------------------------------------- /tmux/tmuxconf: -------------------------------------------------------------------------------- 1 | set -g default-terminal "screen-256color" 2 | 3 | # Remap prefix key to ctrl-\ instead of ctrl-b 4 | unbind-key C-b 5 | set -g prefix 'C-\' 6 | bind-key 'C-\' send-prefix 7 | 8 | # Map | and - to split panes 9 | bind | split-window -h 10 | bind - split-window -v 11 | 12 | # Allow scrolling with mouse 13 | set-option -g mouse on 14 | 15 | # Enable vi keys in tmux 16 | set-window-option -g mode-keys vi 17 | 18 | # Allows copying selected text with 'y' and visual mode with 'v' 19 | # once in copy mode. Copy mode is triggered by mouse scroll or -[ 20 | bind-key -T copy-mode-vi v send-keys -X begin-selection 21 | bind-key -T copy-mode-vi y send-keys -X copy-selection 22 | 23 | # http://www.rushiagr.com/blog/2016/06/16/everything-you-need-to-know-about-tmux-copy-pasting/ 24 | # Prevents jump to bottom after mouse copy (vi side-effect) by staying in copy mode, however, it seems 25 | # to mess with the ability to copy to clipboard (with ctrl-c, but yanking with 'y' works). In iTerm2 26 | # with clipboard settings enabled you can hold option (alt) to avoid going down when re-clicking and 27 | # disable this setting. 28 | unbind -T copy-mode-vi MouseDragEnd1Pane 29 | 30 | # Tmux session is always open so limit history 31 | set-option -g history-limit 10000 32 | 33 | # Remove escape key delay for vim 34 | set -sg escape-time 0 35 | 36 | # Vim style pane selection 37 | bind h select-pane -L 38 | bind j select-pane -D 39 | bind k select-pane -U 40 | bind l select-pane -R 41 | 42 | # Colors: 43 | # https://upload.wikimedia.org/wikipedia/commons/1/15/Xterm_256color_chart.svg 44 | # Set inactive/active window styles 45 | set -g window-style 'fg=colour247,bg=colour234' 46 | set -g window-active-style 'fg=colour250,bg=black' 47 | 48 | # Pane border 49 | set -g pane-border-bg colour238 50 | set -g pane-border-fg colour235 51 | set -g pane-active-border-bg colour236 52 | set -g pane-active-border-fg colour51 53 | -------------------------------------------------------------------------------- /vim/vim/colors/wombat.vim: -------------------------------------------------------------------------------- 1 | " Original author: Lars Nielsen (dengmao@gmail.com) 2 | " Last Change: January 22 2007 3 | " improved by Eric Leschinski (eric.leschinski@hotmail.com) 4 | 5 | set background=dark 6 | 7 | hi clear 8 | 9 | if exists("syntax_on") 10 | syntax reset 11 | endif 12 | 13 | let colors_name = "wombat" 14 | 15 | 16 | " Vim >= 7.0 specific colors 17 | if version >= 700 18 | hi CursorLine guibg=#2d2d2d 19 | hi CursorColumn guibg=#2d2d2d 20 | hi MatchParen guifg=#f6f3e8 guibg=#857b6f gui=bold 21 | hi Pmenu guifg=#f6f3e8 guibg=#444444 22 | hi PmenuSel guifg=#000000 guibg=#cae682 23 | endif 24 | 25 | " General colors 26 | hi Cursor guifg=NONE guibg=#656565 gui=none 27 | hi Normal guifg=#f6f3e8 guibg=#242424 gui=none 28 | hi NonText guifg=#808080 guibg=#303030 gui=none 29 | hi LineNr guifg=#857b6f guibg=#000000 gui=none 30 | hi StatusLine guifg=#f6f3e8 guibg=#444444 gui=italic 31 | hi StatusLineNC guifg=#857b6f guibg=#444444 gui=none 32 | hi VertSplit guifg=#444444 guibg=#444444 gui=none 33 | hi Folded guibg=#384048 guifg=#a0a8b0 gui=none 34 | hi Title guifg=#f6f3e8 guibg=NONE gui=bold 35 | hi Visual guifg=#f6f3e8 guibg=#444444 gui=none 36 | hi SpecialKey guifg=#808080 guibg=#343434 gui=none 37 | 38 | " Syntax highlighting 39 | hi Comment guifg=#99968b gui=italic 40 | hi Todo guifg=#8f8f8f gui=italic 41 | hi Constant guifg=#e5786d gui=none 42 | hi String guifg=#551a8b gui=italic 43 | hi Identifier guifg=#cae682 gui=none 44 | hi Function guifg=#cae682 gui=none 45 | hi Type guifg=#cae682 gui=none 46 | hi Statement guifg=#8ac6f2 gui=none 47 | hi Keyword guifg=#8ac6f2 gui=none 48 | hi PreProc guifg=#e5786d gui=none 49 | hi Number guifg=#e5786d gui=none 50 | hi Special guifg=#e7f6da gui=none 51 | 52 | hi String ctermfg=140 53 | hi CursorLine ctermbg=235 54 | hi CursorLine guibg=#D3D3D3 cterm=none 55 | 56 | -------------------------------------------------------------------------------- /sublime/snippets/testSuite/python/testFactors.py: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/pypy 2 | # -*- coding: utf-8 -*- 3 | 4 | from Queue import Queue 5 | import random 6 | 7 | def gcd ( a , b ): 8 | while b != 0: a, b = b, a % b 9 | return a 10 | 11 | def isprime(n): return rabin_miller(n) 12 | 13 | def rabin_miller(p): 14 | if(p<2): return False 15 | if(p!=2 and p%2==0): return False 16 | s=p-1 17 | while(s%2==0): s>>=1 18 | for _ in xrange(10): 19 | a=random.randrange(p-1)+1 20 | temp=s 21 | mod=pow(a,temp,p) 22 | while(temp!=p-1 and mod!=1 and mod!=p-1): 23 | mod=(mod*mod)%p 24 | temp=temp*2 25 | if(mod!=p-1 and temp%2==0): return False 26 | return True 27 | 28 | def pollard_rho(n): 29 | if(n%2==0): return 2; 30 | x=random.randrange(2,1000000) 31 | c=random.randrange(2,1000000) 32 | y=x 33 | d=1 34 | while(d==1): 35 | x=(x*x+c)%n 36 | y=(y*y+c)%n 37 | y=(y*y+c)%n 38 | d=gcd(x-y,n) 39 | if(d==n): break; 40 | return d; 41 | 42 | ''' Tested up to 23000000 ''' 43 | def primeFactorization(n): 44 | if n <= 0: raise ValueError("Fucked up input, n <= 0") 45 | elif n == 1: return [] 46 | queue = Queue() 47 | factors=[] 48 | queue.put(n) 49 | while(not queue.empty()): 50 | l=queue.get() 51 | if(isprime(l)): 52 | factors.append(l) 53 | continue 54 | d=pollard_rho(l) 55 | if(d==l):queue.put(l) 56 | else: 57 | queue.put(d) 58 | queue.put(l/d) 59 | return factors 60 | 61 | product = lambda x, y: x * y 62 | 63 | 64 | """ TESTED n UP TO 23000000 """ 65 | n = 2 66 | 67 | while True: 68 | 69 | # By the fundamental theorem of arithmetic, the product 70 | # of all prime factors MUST equal to original number. 71 | if reduce(product, primeFactorization(n) ) != n: 72 | print "primeFactors failed @:", n 73 | break 74 | if n % 50000 == 0: print n 75 | n+=1 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | -------------------------------------------------------------------------------- /sublime/snippets/testSuite/go/eulerMethods_test.go: -------------------------------------------------------------------------------- 1 | package eulerMethods 2 | 3 | import "testing" 4 | 5 | type palindrome struct { 6 | pal string 7 | valid bool 8 | } 9 | 10 | var even_paldindromes = []palindrome{ 11 | 12 | palindrome{"334433", true}, 13 | palindrome{"", true}, 14 | palindrome{"nil", false}, 15 | } 16 | 17 | var odd_paldindromes = []palindrome{ 18 | 19 | {"121", true}, 20 | {"1", true}, 21 | {"33433", true}, 22 | {"123", false}, 23 | } 24 | 25 | func Test_even_paldindrome(test *testing.T) { 26 | 27 | for _, p := range even_paldindromes { 28 | if p.valid != isPalindrome(&(p.pal)) { 29 | 30 | test.Error("For", p.pal, "excpected", p.valid, "got", isPalindrome(&p.pal)) 31 | 32 | } 33 | } 34 | } 35 | 36 | func Test_off_paldindrome(test *testing.T) { 37 | for i, _ := range odd_paldindromes { 38 | 39 | p := odd_paldindromes[i] 40 | if p.valid != isPalindrome(&p.pal) { 41 | test.Error("For", p.pal, "excpected", p.valid, "got", isPalindrome(&p.pal)) 42 | } 43 | 44 | } 45 | } 46 | 47 | type prime struct { 48 | val int64 49 | valid bool 50 | } 51 | 52 | var primes = []prime{ 53 | {-1, false}, 54 | {1, false}, 55 | {2, true}, 56 | {3, true}, 57 | {4, false}, 58 | {91, false}, 59 | {9901, true}, 60 | {101, true}, 61 | {56346335, false}, 62 | } 63 | 64 | func Test_standard_prime_function(t *testing.T) { 65 | for i := 0; i < len(primes); i++ { 66 | if isPrime(primes[i].val) != primes[i].valid { 67 | t.Error(primes[i].val, "slipped through the net..") 68 | } 69 | } 70 | } 71 | 72 | func TestDigitAtIndex(t *testing.T) { 73 | type pair struct { 74 | num int 75 | i int 76 | digit int 77 | } 78 | pairs := []pair{ 79 | 80 | {1234, 0, 4}, 81 | {1234, 3, 1}, 82 | {101, 1, 0}, 83 | {1234, 1, 3}, 84 | {0, 0, 0}, 85 | } 86 | 87 | for _, p := range pairs { 88 | if digitAtIndex(p.num, p.i) != p.digit { 89 | t.Error(p.num, p.i, p.digit, digitAtIndex(p.num, p.i), "slipped through the net") 90 | } 91 | } 92 | 93 | } 94 | -------------------------------------------------------------------------------- /sublime/snippets/wf_phi_py.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | >=1 15 | for _ in xrange(10): 16 | a=random.randrange(p-1)+1 17 | temp=s 18 | mod=pow(a,temp,p) 19 | while(temp!=p-1 and mod!=1 and mod!=p-1): 20 | mod=(mod*mod)%p 21 | temp=temp*2 22 | if(mod!=p-1 and temp%2==0): return False 23 | return True 24 | 25 | def pollard_rho(n): 26 | if(n%2==0): return 2; 27 | x=random.randrange(2,1000000) 28 | c=random.randrange(2,1000000) 29 | y=x 30 | d=1 31 | while(d==1): 32 | x=(x*x+c)%n 33 | y=(y*y+c)%n 34 | y=(y*y+c)%n 35 | d=gcd(x-y,n) 36 | if(d==n): break; 37 | return d; 38 | 39 | ''' Tested up to 23000000 ''' 40 | def primeFactorization(n): 41 | if n <= 0: raise ValueError("Fucked up input, n <= 0") 42 | elif n == 1: return [] 43 | queue = Queue() 44 | factors=[] 45 | queue.put(n) 46 | while(not queue.empty()): 47 | l=queue.get() 48 | if(rabin_miller(l)): 49 | factors.append(l) 50 | continue 51 | d=pollard_rho(l) 52 | if(d==l):queue.put(l) 53 | else: 54 | queue.put(d) 55 | queue.put(l/d) 56 | return factors 57 | 58 | ''' Tested up to 16 million ''' 59 | def phi(n): 60 | 61 | if rabin_miller(n): return n-1 62 | phi = n 63 | for p in set(primeFactorization(n)): 64 | phi -= (phi/p) 65 | return phi 66 | ]]> 67 | 68 | wf_phi 69 | 70 | source.python 71 | 72 | -------------------------------------------------------------------------------- /sublime/snippets/ms_primefactorization_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | static ArrayList <Long> primeFactorization(long n) { 4 | ArrayList <Long> factors = new ArrayList<>(); 5 | if (n <= 0) throw new IllegalArgumentException(); 6 | else if (n == 1) return factors; 7 | PriorityQueue <Long> divisorQueue = new PriorityQueue<>(); 8 | divisorQueue.add(n); 9 | while (!divisorQueue.isEmpty()) { 10 | long divisor = divisorQueue.remove(); 11 | if (isPrime(divisor)) { 12 | factors.add(divisor); 13 | continue; 14 | } 15 | long next_divisor = pollardRho(divisor); 16 | if (next_divisor == divisor) { 17 | divisorQueue.add(divisor); 18 | } else { 19 | divisorQueue.add(next_divisor); 20 | divisorQueue.add(divisor / next_divisor); 21 | } 22 | } 23 | return factors; 24 | } 25 | 26 | static long pollardRho(long n) { 27 | if (n % 2 == 0) return 2; 28 | long x = 2 + (long)(999999 * Math.random()); 29 | long c = 2 + (long)(999999 * Math.random()); 30 | long y = x; 31 | long d = 1; 32 | while (d == 1) { 33 | x = (x * x + c) % n; 34 | y = (y * y + c) % n; 35 | y = (y * y + c) % n; 36 | d = gcd(Math.abs(x - y), n); 37 | if (d == n) break; 38 | } 39 | return d; 40 | } 41 | 42 | static long gcd(long a, long b) { 43 | return b == 0 ? (a < 0 ? -a : a) : gcd(b, a % b); 44 | } 45 | 46 | static boolean isPrime(final long n) { 47 | if (n < 2) return false; 48 | if (n == 2 || n == 3) return true; 49 | if (n % 2 == 0 || n % 3 == 0) return false; 50 | long limit = (long) Math.sqrt(n); 51 | for (long i = 5; i <= limit; i += 6) 52 | if (n % i == 0 || n % (i + 2) == 0) 53 | return false; 54 | return true; 55 | } 56 | 57 | ms_primefactorization 58 | 59 | source.java 60 | 61 | -------------------------------------------------------------------------------- /vim/vim/autoload/onedark.vim: -------------------------------------------------------------------------------- 1 | " [onedark.vim](https://github.com/joshdick/onedark.vim/) 2 | 3 | let s:overrides = get(g:, "onedark_color_overrides", {}) 4 | 5 | let s:colors = { 6 | \ "red": get(s:overrides, "red", { "gui": "#E06C75", "cterm": "204", "cterm16": "1" }), 7 | \ "dark_red": get(s:overrides, "dark_red", { "gui": "#BE5046", "cterm": "196", "cterm16": "9" }), 8 | \ "green": get(s:overrides, "green", { "gui": "#98C379", "cterm": "114", "cterm16": "2" }), 9 | \ "yellow": get(s:overrides, "yellow", { "gui": "#E5C07B", "cterm": "180", "cterm16": "3" }), 10 | \ "dark_yellow": get(s:overrides, "dark_yellow", { "gui": "#D19A66", "cterm": "173", "cterm16": "11" }), 11 | \ "blue": get(s:overrides, "blue", { "gui": "#61AFEF", "cterm": "39", "cterm16": "4" }), 12 | \ "purple": get(s:overrides, "purple", { "gui": "#C678DD", "cterm": "170", "cterm16": "5" }), 13 | \ "cyan": get(s:overrides, "cyan", { "gui": "#56B6C2", "cterm": "38", "cterm16": "6" }), 14 | \ "white": get(s:overrides, "white", { "gui": "#ABB2BF", "cterm": "145", "cterm16": "7" }), 15 | \ "black": get(s:overrides, "black", { "gui": "#282C34", "cterm": "235", "cterm16": "0" }), 16 | \ "visual_black": get(s:overrides, "visual_black", { "gui": "NONE", "cterm": "NONE", "cterm16": "0" }), 17 | \ "comment_grey": get(s:overrides, "comment_grey", { "gui": "#5C6370", "cterm": "59", "cterm16": "15" }), 18 | \ "gutter_fg_grey": get(s:overrides, "gutter_fg_grey", { "gui": "#4B5263", "cterm": "238", "cterm16": "15" }), 19 | \ "cursor_grey": get(s:overrides, "cursor_grey", { "gui": "#2C323C", "cterm": "236", "cterm16": "8" }), 20 | \ "visual_grey": get(s:overrides, "visual_grey", { "gui": "#3E4452", "cterm": "237", "cterm16": "15" }), 21 | \ "menu_grey": get(s:overrides, "menu_grey", { "gui": "#3E4452", "cterm": "237", "cterm16": "8" }), 22 | \ "special_grey": get(s:overrides, "special_grey", { "gui": "#3B4048", "cterm": "238", "cterm16": "15" }), 23 | \ "vertsplit": get(s:overrides, "vertsplit", { "gui": "#181A1F", "cterm": "59", "cterm16": "15" }), 24 | \} 25 | 26 | function! onedark#GetColors() 27 | return s:colors 28 | endfunction 29 | -------------------------------------------------------------------------------- /sublime/snippets/ms_fordFulkersonMaxFlow.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | static long fordFulkerson(Node source, Node target, int nNodes) { 3 | long maxFlow = 0; 4 | boolean pathWasFound = true; 5 | while (pathWasFound) { 6 | pathWasFound = false; 7 | Long bottleneck = getBottleNeck(source, target, new boolean[nNodes], Long.MAX_VALUE); 8 | if (bottleneck != null && bottleneck > 0) { 9 | pathWasFound = true; 10 | maxFlow += bottleneck; 11 | } 12 | } 13 | return maxFlow; 14 | } 15 | static Long getBottleNeck(Node current, Node target, boolean[] visited, long currentBottleNeck) { 16 | if (visited[current.index]) return null; 17 | if (current.index == target.index) return currentBottleNeck; 18 | visited[current.index] = true; 19 | for (Edge edge : current.adj) 20 | if (edge.capacityLeft > 0) { 21 | Long bottleneck = getBottleNeck( 22 | edge.target, target, visited, Math.min(currentBottleNeck, edge.capacityLeft)); 23 | if (bottleneck != null) { 24 | edge.capacityLeft -= bottleneck; 25 | edge.opposite.capacityLeft += bottleneck; 26 | return bottleneck; 27 | } 28 | } 29 | return null; // Dead-end 30 | } 31 | class Node { 32 | List<Edge> adj = new ArrayList<Edge>(); 33 | int index; 34 | public Node(int index) { this.index = index; } 35 | public static void addEdge(Node initial, Node target, long capacity) { 36 | Edge edge = new Edge(initial, target, capacity); 37 | edge.originalCapacity = capacity; 38 | initial.adj.add(edge); 39 | Edge reversed = new Edge(target, initial, 0); 40 | target.adj.add(reversed); 41 | edge.opposite = reversed; 42 | reversed.opposite = edge; 43 | } 44 | } 45 | class Edge { 46 | Edge opposite = null; 47 | Node initial, target; 48 | // Residual edges should have originalCapacity=null 49 | // so that this can be used to determine which nodes are the originals 50 | Long originalCapacity = null; 51 | long capacityLeft; 52 | public Edge(Node initial, Node target, long capacity) { 53 | this.initial = initial; this.target = target; this.capacityLeft = capacity; 54 | } 55 | } 56 | 57 | ms_fordFulkersonMaxFlow 58 | 59 | source.java 60 | 61 | -------------------------------------------------------------------------------- /sublime/snippets/ms_fordFulkersonMinCut.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | static boolean[] fordFulkerson(Node source, Node target, int n) { 3 | boolean pathWasFound = true; 4 | boolean[] minCut = new boolean[n]; 5 | while (pathWasFound) { 6 | pathWasFound = false; 7 | Arrays.fill(minCut, false); 8 | Long bottleneck = getBottleNeck(source, target, Long.MAX_VALUE, minCut); 9 | if (bottleneck != null && bottleneck > 0) pathWasFound = true; 10 | } 11 | return minCut; 12 | } 13 | static Long getBottleNeck(Node current, Node target, boolean[] visited, long currentBottleNeck) { 14 | if (visited[current.index]) return null; 15 | if (current.index == target.index) return currentBottleNeck; 16 | visited[current.index] = true; 17 | for (Edge edge : current.adj) 18 | if (edge.capacityLeft > 0) { 19 | Long bottleneck = getBottleNeck( 20 | edge.target, target, visited, Math.min(currentBottleNeck, edge.capacityLeft)); 21 | if (bottleneck != null) { 22 | edge.capacityLeft -= bottleneck; 23 | edge.opposite.capacityLeft += bottleneck; 24 | return bottleneck; 25 | } 26 | } 27 | return null; // Dead-end 28 | } 29 | class Node { 30 | List<Edge> adj = new ArrayList<Edge>(); 31 | int index; 32 | public Node(int index) { this.index = index; } 33 | public static void addEdge(Node initial, Node target, long capacity) { 34 | Edge edge = new Edge(initial, target, capacity); 35 | edge.originalCapacity = capacity; 36 | initial.adj.add(edge); 37 | Edge reversed = new Edge(target, initial, 0); 38 | target.adj.add(reversed); 39 | edge.opposite = reversed; 40 | reversed.opposite = edge; 41 | } 42 | } 43 | class Edge { 44 | Edge opposite = null; 45 | Node initial, target; 46 | // Residual edges should have originalCapacity=null 47 | // so that this can be used to determine which nodes are the originals 48 | Long originalCapacity = null; 49 | long capacityLeft; 50 | public Edge(Node initial, Node target, long capacity) { 51 | this.initial = initial; this.target = target; this.capacityLeft = capacity; 52 | } 53 | } 54 | 55 | ms_fordFulkersonMaxFlow 56 | 57 | source.java 58 | 59 | -------------------------------------------------------------------------------- /fish-shell/fishd.10ddb1c19e2f: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by the fish. 2 | # Do NOT edit it directly, your changes will be overwritten. 3 | SET __fish_init_2_39_8:\x1d 4 | SET __fish_init_2_3_0:\x1d 5 | SET fish_color_autosuggestion:555\x1ebrblack 6 | SET fish_color_cancel:\x2dr 7 | SET fish_color_command:\x2d\x2dbold 8 | SET fish_color_comment:red 9 | SET fish_color_cwd:green 10 | SET fish_color_cwd_root:red 11 | SET fish_color_end:brmagenta 12 | SET fish_color_error:brred 13 | SET fish_color_escape:bryellow\x1e\x2d\x2dbold 14 | SET fish_color_history_current:\x2d\x2dbold 15 | SET fish_color_host:normal 16 | SET fish_color_match:\x2d\x2dbackground\x3dbrblue 17 | SET fish_color_normal:normal 18 | SET fish_color_operator:bryellow 19 | SET fish_color_param:cyan 20 | SET fish_color_quote:yellow 21 | SET fish_color_redirection:brblue 22 | SET fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack 23 | SET fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack 24 | SET fish_color_user:brgreen 25 | SET fish_color_valid_path:\x2d\x2dunderline 26 | SET fish_key_bindings:fish_default_key_bindings 27 | SET fish_pager_color_completion:\x1d 28 | SET fish_pager_color_description:B3A06D\x1eyellow 29 | SET fish_pager_color_prefix:white\x1e\x2d\x2dbold\x1e\x2d\x2dunderline 30 | SET fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan 31 | SET fish_user_abbreviations:l\x20ls\x20\x2dF\x1ell\x20ls\x20\x2dlhF\x1ela\x20ls\x20\x2dahF\x1egita\x20git\x20add\x20\x2dA\x1egits\x20git\x20status\x1egitc\x20git\x20commit\x20\x2dm\x1egitp\x20git\x20push\x1egitl\x20git\x20log\x20\x2d\x2doneline\x20\x2dn\x2010\x1ec\x20cd\x1e\x2e\x2e\x20cd\x20\x2e\x2e\x1e\x2e\x2e\x2e\x20cd\x20\x2e\x2e/\x2e\x2e\x1e\x2e\x2e\x2e\x2e\x20cd\x20\x2e\x2e/\x2e\x2e/\x2e\x2e\x1e\x2e\x2e\x2e\x2e\x2e\x20cd\x20\x2e\x2e/\x2e\x2e/\x2e\x2e/\x2e\x2e\x1e\x2e\x2e\x2e\x2e\x2e\x2e\x20cd\x20\x2e\x2e/\x2e\x2e/\x2e\x2e/\x2e\x2e/\x2e\x2e\x1e\x2e\x2e\x2e\x2e\x2e\x2e\x2e\x20cd\x20\x2e\x2e/\x2e\x2e/\x2e\x2e/\x2e\x2e/\x2e\x2e/\x2e\x2e\x1ekat\x20cd\x20/Users/williamfiset/Dropbox/Programming/Competitions/Kattis\x1edrive\x20cd\x20/Users/williamfiset/Google\x20Drive/\x1eeuler\x20cd\x20/Users/williamfiset/Dropbox/Programming/Project_Euler/WIP\x1euni\x20cd\x20/Users/williamfiset/Dropbox/University/\x1edrop\x20cd\x20/Users/williamfiset/Dropbox\x1egithub\x20cd\x20/Users/williamfiset/Desktop/GitHub\x1edesk\x20cd\x20/Users/williamfiset/Desktop\x1ecomp\x20cd\x20/Users/williamfiset/Dropbox/Programming/Competitions 32 | -------------------------------------------------------------------------------- /sublime/snippets/ms_array_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | class A implements Iterable <${2:PRIMATIVE_WRAPPER_CLASS}> { 4 | public ${1:PRIMATIVE_TYPE} [] arr; 5 | public int cap = 0, len = 0; 6 | public A() { this(4); } 7 | public A(int cap) { arr = new ${1:PRIMATIVE_TYPE}[(this.cap = cap)]; } 8 | public int size() { return len; } 9 | public boolean isEmpty() { return len == 0; } 10 | public ${1:PRIMATIVE_TYPE} get(int i) { return arr[i]; } // or array.arr[i] 11 | public void set(int i, ${1:PRIMATIVE_TYPE} elem) { arr[i] = elem; } 12 | public void add(${1:PRIMATIVE_TYPE} elem) { 13 | if (len+1 >= cap) { 14 | if (cap == 0) cap = 1; else cap <<= 1; 15 | arr = java.util.Arrays.copyOf(arr, cap); // pads with extra 0/null elements 16 | } arr[len++] = elem; 17 | } public void removeAt(int rm_index) { 18 | System.arraycopy(arr, rm_index+1, arr, rm_index, len - rm_index - 1 ); 19 | --len; --cap; 20 | } public boolean remove(${1:PRIMATIVE_TYPE} elem) { 21 | for (int i = 0; i < len; i++) {if (arr[i] == elem) {removeAt(i); return true; } } 22 | return false; 23 | } public void reverse() { 24 | for(int i = 0; i < len/2; i++) { 25 | ${1:PRIMATIVE_TYPE} tmp = arr[i]; 26 | arr[i] = arr[len - i - 1]; 27 | arr[len - i - 1] = tmp; 28 | } 29 | } // Make sure this array is sorted! Returns a value < 0 if item is not found 30 | public int binarySearch(${1:PRIMATIVE_TYPE} key) { 31 | int i = java.util.Arrays.binarySearch(arr, 0, len, key); 32 | // if (i < 0) i = -i - 1; // If not found this will tell you where to insert 33 | return i; 34 | } public void sort() { java.util.Arrays.sort( arr, 0, len ); } 35 | @Override public Iterator <${2:PRIMATIVE_WRAPPER_CLASS}> iterator () { 36 | return new Iterator <${2:PRIMATIVE_WRAPPER_CLASS}> () { int i = 0; 37 | public boolean hasNext() { return i < len; } 38 | public ${2:PRIMATIVE_WRAPPER_CLASS} next() { return arr[i++]; } }; 39 | } @Override public String toString() { 40 | if (len == 0) return "[]"; 41 | else {StringBuilder sb = new StringBuilder( len ).append("["); 42 | for (int i = 0; i < len-1; i++ ) sb.append(arr[i] + ", " ); 43 | return sb.append(arr[len-1] + "]").toString(); 44 | } 45 | } 46 | } 47 | 48 | 49 | ms_array 50 | 51 | source.java 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /sublime/snippets/testSuite/python/testPhi.py: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/pypy 2 | # -*- coding: utf-8 -*- 3 | 4 | ''' Known to work phi method ''' 5 | def isprime(n): 6 | if n < 2: return False 7 | elif n in (2, 3): return True 8 | elif n % 2 == 0 or n % 3 == 0: return False 9 | root = int(n**0.5)+1 10 | for f in xrange( 5, root, 6): 11 | if n % f == 0 or n % (f+2) == 0: 12 | return False 13 | return True 14 | 15 | # Returns the factors of a given number, unsorted. 16 | def getDistinctPrimeFactors(n): 17 | l = [] 18 | for f in xrange(2, int(n**0.5)+1): 19 | if n % f == 0: 20 | c = n / f 21 | if c is not f: 22 | if isprime(f): l.append(f) 23 | if isprime(c): l.append(c) 24 | else: 25 | if isprime(f): l.append(f) 26 | return list(set(l)) 27 | 28 | def phi_original(n): 29 | if isprime(n): return n-1 30 | phi = n 31 | for p in getDistinctPrimeFactors(n): 32 | phi -= (phi/p) 33 | return phi 34 | 35 | 36 | from Queue import Queue 37 | import random 38 | def gcd ( a , b ): 39 | while b != 0: a, b = b, a % b 40 | return a 41 | def rabin_miller(p): 42 | if(p<2): return False 43 | if(p!=2 and p%2==0): return False 44 | s=p-1 45 | while(s%2==0): s>>=1 46 | for _ in xrange(10): 47 | a=random.randrange(p-1)+1 48 | temp=s 49 | mod=pow(a,temp,p) 50 | while(temp!=p-1 and mod!=1 and mod!=p-1): 51 | mod=(mod*mod)%p 52 | temp=temp*2 53 | if(mod!=p-1 and temp%2==0): return False 54 | return True 55 | 56 | def pollard_rho(n): 57 | if(n%2==0): return 2; 58 | x=random.randrange(2,1000000) 59 | c=random.randrange(2,1000000) 60 | y=x 61 | d=1 62 | while(d==1): 63 | x=(x*x+c)%n 64 | y=(y*y+c)%n 65 | y=(y*y+c)%n 66 | d=gcd(x-y,n) 67 | if(d==n): break; 68 | return d; 69 | 70 | ''' Tested up to 23000000 ''' 71 | def primeFactorization(n): 72 | if n <= 0: raise ValueError("Fucked up input, n <= 0") 73 | elif n == 1: return [] 74 | queue = Queue() 75 | factors=[] 76 | queue.put(n) 77 | while(not queue.empty()): 78 | l=queue.get() 79 | if(isprime(l)): 80 | factors.append(l) 81 | continue 82 | d=pollard_rho(l) 83 | if(d==l):queue.put(l) 84 | else: 85 | queue.put(d) 86 | queue.put(l/d) 87 | return factors 88 | 89 | def phi_new(n): 90 | 91 | if rabin_miller(n): return n-1 92 | phi = n 93 | for p in set(primeFactorization(n)): 94 | phi -= (phi/p) 95 | return phi 96 | 97 | 98 | x = 1 99 | while True: 100 | 101 | if phi_original(x) != phi_new(x): 102 | print "Broke at:", x 103 | break 104 | 105 | if x % 50000 == 0: print x 106 | x += 1 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | -------------------------------------------------------------------------------- /vim/vim/colors/slate2.vim: -------------------------------------------------------------------------------- 1 | "%% SiSU Vim color file 2 | " Slate Maintainer: Ralph Amissah 3 | " (originally looked at desert Hans Fugal http://hans.fugal.net/vim/colors/desert.vim (2003/05/06) 4 | " Modified by Eric Leschinski (eric.leschinski@hotmail.com) 5 | 6 | :set background=dark 7 | :highlight clear 8 | if version > 580 9 | hi clear 10 | if exists("syntax_on") 11 | syntax reset 12 | endif 13 | endif 14 | let colors_name = "slate2" 15 | :hi Normal guifg=White guibg=grey15 16 | :hi Cursor guibg=khaki guifg=slategrey 17 | :hi VertSplit guibg=#c2bfa5 guifg=grey40 gui=none cterm=reverse 18 | :hi Folded guibg=black guifg=grey40 ctermfg=grey ctermbg=darkgrey 19 | :hi FoldColumn guibg=black guifg=grey20 ctermfg=4 ctermbg=7 20 | :hi IncSearch guifg=green guibg=black cterm=none ctermfg=yellow ctermbg=green 21 | :hi ModeMsg guifg=goldenrod cterm=none ctermfg=brown 22 | :hi MoreMsg guifg=SeaGreen ctermfg=darkgreen 23 | :hi NonText guifg=RoyalBlue guibg=grey15 cterm=bold ctermfg=blue 24 | :hi Question guifg=springgreen ctermfg=green 25 | :hi Search guibg=peru guifg=wheat cterm=none ctermfg=grey ctermbg=blue 26 | :hi SpecialKey guifg=yellowgreen ctermfg=darkgreen 27 | :hi StatusLine guibg=#c2bfa5 guifg=black gui=none cterm=bold,reverse 28 | :hi StatusLineNC guibg=#c2bfa5 guifg=grey40 gui=none cterm=reverse 29 | :hi Title guifg=gold gui=bold cterm=bold ctermfg=yellow 30 | :hi Statement guifg=CornflowerBlue ctermfg=lightblue 31 | :hi Visual gui=none guifg=khaki guibg=olivedrab cterm=reverse 32 | :hi WarningMsg guifg=salmon ctermfg=1 33 | :hi String guifg=SkyBlue ctermfg=darkcyan 34 | :hi Comment term=bold ctermfg=11 guifg=grey40 35 | :hi Constant guifg=#ffa0a0 ctermfg=brown 36 | :hi Special guifg=darkkhaki ctermfg=brown 37 | :hi Identifier guifg=salmon ctermfg=red 38 | :hi Include guifg=red ctermfg=red 39 | :hi PreProc guifg=red guibg=white ctermfg=red 40 | :hi Operator guifg=Red ctermfg=Red 41 | :hi Define guifg=gold gui=bold ctermfg=yellow 42 | :hi Type guifg=CornflowerBlue ctermfg=2 43 | :hi Function guifg=navajowhite ctermfg=brown 44 | :hi Structure guifg=green ctermfg=green 45 | :hi LineNr guifg=grey50 ctermfg=3 46 | :hi Ignore guifg=grey40 cterm=bold ctermfg=7 47 | :hi Todo guifg=orangered guibg=yellow2 48 | :hi Directory ctermfg=darkcyan 49 | :hi ErrorMsg cterm=bold guifg=White guibg=Red cterm=bold ctermfg=7 ctermbg=1 50 | :hi VisualNOS cterm=bold,underline 51 | :hi WildMenu ctermfg=0 ctermbg=3 52 | :hi DiffAdd ctermbg=4 53 | :hi DiffChange ctermbg=5 54 | :hi DiffDelete cterm=bold ctermfg=4 ctermbg=6 55 | :hi DiffText cterm=bold ctermbg=1 56 | :hi Underlined cterm=underline ctermfg=5 57 | :hi Error guifg=White guibg=Red cterm=bold ctermfg=7 ctermbg=1 58 | :hi SpellErrors guifg=White guibg=Red cterm=bold ctermfg=7 ctermbg=1 59 | 60 | :hi String ctermfg=140 61 | :hi CursorLine ctermbg=235 62 | :hi CursorLine guibg=#D3D3D3 cterm=none 63 | -------------------------------------------------------------------------------- /fish-shell/functions/fish_prompt.fish: -------------------------------------------------------------------------------- 1 | 2 | function fish_prompt --description 'Sets the fish shell prompt' 3 | 4 | # Get the exit status of the last program 5 | set -l last_status $status 6 | 7 | if not set -q __fish_git_prompt_show_informative_status 8 | set -g __fish_git_prompt_show_informative_status 1 9 | end 10 | if not set -q __fish_git_prompt_hide_untrackedfiles 11 | set -g __fish_git_prompt_hide_untrackedfiles 1 12 | end 13 | 14 | if not set -q __fish_git_prompt_color_branch 15 | set -g __fish_git_prompt_color_branch magenta --bold 16 | end 17 | if not set -q __fish_git_prompt_showupstream 18 | set -g __fish_git_prompt_showupstream "informative" 19 | end 20 | if not set -q __fish_git_prompt_char_upstream_ahead 21 | set -g __fish_git_prompt_char_upstream_ahead "↑" 22 | end 23 | if not set -q __fish_git_prompt_char_upstream_behind 24 | set -g __fish_git_prompt_char_upstream_behind "↓" 25 | end 26 | if not set -q __fish_git_prompt_char_upstream_prefix 27 | set -g __fish_git_prompt_char_upstream_prefix "" 28 | end 29 | 30 | if not set -q __fish_git_prompt_char_stagedstate 31 | set -g __fish_git_prompt_char_stagedstate "●" 32 | end 33 | if not set -q __fish_git_prompt_char_dirtystate 34 | set -g __fish_git_prompt_char_dirtystate "✚" 35 | end 36 | if not set -q __fish_git_prompt_char_untrackedfiles 37 | set -g __fish_git_prompt_char_untrackedfiles "…" 38 | end 39 | if not set -q __fish_git_prompt_char_conflictedstate 40 | set -g __fish_git_prompt_char_conflictedstate "✖" 41 | end 42 | if not set -q __fish_git_prompt_char_cleanstate 43 | set -g __fish_git_prompt_char_cleanstate "✔" 44 | end 45 | 46 | if not set -q __fish_git_prompt_color_dirtystate 47 | set -g __fish_git_prompt_color_dirtystate blue 48 | end 49 | if not set -q __fish_git_prompt_color_stagedstate 50 | set -g __fish_git_prompt_color_stagedstate yellow 51 | end 52 | if not set -q __fish_git_prompt_color_invalidstate 53 | set -g __fish_git_prompt_color_invalidstate red 54 | end 55 | if not set -q __fish_git_prompt_color_untrackedfiles 56 | set -g __fish_git_prompt_color_untrackedfiles $fish_color_normal 57 | end 58 | if not set -q __fish_git_prompt_color_cleanstate 59 | set -g __fish_git_prompt_color_cleanstate green --bold 60 | end 61 | 62 | # Set path color depending on last program exit status 63 | if test $last_status -eq 0 64 | set_color $fish_color_cwd 65 | else 66 | set_color $fish_color_error 67 | end 68 | 69 | # Print path 70 | echo -n (prompt_pwd) 71 | 72 | # Reset colors to normal 73 | set_color normal 74 | 75 | if not set -q __fish_prompt_normal 76 | set -g __fish_prompt_normal (set_color normal) 77 | end 78 | 79 | # Add git prompt 80 | printf '%s ' (__fish_git_prompt) 81 | 82 | echo -n '$ ' 83 | 84 | end 85 | 86 | 87 | -------------------------------------------------------------------------------- /vim/vimrc: -------------------------------------------------------------------------------- 1 | syntax on 2 | 3 | " Currently disabled cannot find a way to make line transparent. 4 | " set cursorline " highlight current line 5 | " hi CursorLine term=none cterm=none ctermbg=LightGray " adjust color 6 | 7 | " Disable compatability with vi for additional enhancements 8 | set nocompatible 9 | 10 | " Vim file type detection 11 | filetype off 12 | 13 | " Look in ~/.vim/colors for other color schemes 14 | colorscheme onedark "rupza 15 | 16 | " Sets background to be black 17 | highlight Normal ctermfg=grey ctermbg=black 18 | 19 | set expandtab 20 | set shiftwidth=2 21 | set tabstop=2 22 | set number 23 | set autoindent 24 | set relativenumber 25 | 26 | " Backup to ~/.tmp 27 | set backup 28 | set backupdir=~/.vim-tmp,~/.tmp,~/tmp,/var/tmp,/tmp 29 | set backupskip=/tmp/*,/private/tmp/* 30 | set directory=~/.vim-tmp,~/.tmp,~/tmp,/var/tmp,/tmp 31 | set writebackup 32 | 33 | command W w 34 | command Q q 35 | command WQ wq 36 | command Wq wq 37 | 38 | " Holding ctrl in insert mode allows you to move in Insert mode 39 | inoremap h 40 | inoremap j 41 | inoremap k 42 | inoremap l 43 | 44 | " Fast moving in Normal mode 45 | nnoremap b 46 | nnoremap w 47 | nnoremap 3j 48 | nnoremap 3k 49 | 50 | " Hop to beginning/end of line. 51 | nnoremap H ^ 52 | nnoremap L $ 53 | 54 | " Map motions associated with H and L 55 | vnoremap L $ 56 | vnoremap H ^ 57 | noremap dH d^ 58 | noremap dL d$ 59 | noremap cH c^ 60 | noremap cL c$ 61 | 62 | " Search and delete inner bracket hops to nearest bracket 63 | nnoremap ci( /( ci( 64 | nnoremap ci[ /[ ci[ 65 | nnoremap ci{ /{ ci{ 66 | nnoremap ci< /< ci< 67 | 68 | nnoremap di( /( di( 69 | nnoremap di[ /[ di[ 70 | nnoremap di{ /{ di{ 71 | nnoremap di< /< di< 72 | 73 | " Fixes strange hash on first line of file. 74 | set t_RV= 75 | 76 | " Start of vim-plug plugins (install with :PlugInstall) 77 | " https://github.com/junegunn/vim-plug 78 | call plug#begin('~/.vim/vim-plug-pluggins') 79 | 80 | Plug 'gmarik/vundle' 81 | Plug 'dag/vim-fish' 82 | "Plug 'terryma/vim-multiple-cursors' 83 | 84 | " Bottom status line 85 | Plug 'vim-airline/vim-airline' 86 | Plug 'vim-airline/vim-airline-themes' 87 | Plug 'airblade/vim-gitgutter' 88 | 89 | " Adds vim text objects such as (C)hange (A)n (A)rgument - caa, 90 | " and (D)elete (I)nner (A)rgument - dia for function definitions. 91 | Plug 'vim-scripts/argtextobj.vim' 92 | 93 | " Installs dark powered neo-completion (requires neovim to work!) 94 | if has('nvim') 95 | Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } 96 | else 97 | Plug 'Shougo/deoplete.nvim' 98 | Plug 'roxma/nvim-yarp' 99 | Plug 'roxma/vim-hug-neovim-rpc' 100 | endif 101 | 102 | " Initialize plugin system 103 | call plug#end() 104 | 105 | -------------------------------------------------------------------------------- /sublime/snippets/ms_dijkstra_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 77 | 78 | ms_dijkstra 79 | 80 | source.java 81 | 82 | -------------------------------------------------------------------------------- /vim/vim/syntax/rmd.vim: -------------------------------------------------------------------------------- 1 | " markdown Text with R statements 2 | " Language: markdown with R code chunks 3 | " Homepage: https://github.com/jalvesaq/R-Vim-runtime 4 | " Last Change: Tue Jun 28, 2016 10:09AM 5 | " 6 | " CONFIGURATION: 7 | " To highlight chunk headers as R code, put in your vimrc: 8 | " let rmd_syn_hl_chunk = 1 9 | 10 | if exists("b:current_syntax") 11 | finish 12 | endif 13 | 14 | " load all of pandoc info 15 | runtime syntax/pandoc.vim 16 | if exists("b:current_syntax") 17 | let rmdIsPandoc = 1 18 | unlet b:current_syntax 19 | else 20 | let rmdIsPandoc = 0 21 | runtime syntax/markdown.vim 22 | if exists("b:current_syntax") 23 | unlet b:current_syntax 24 | endif 25 | endif 26 | 27 | " load all of the r syntax highlighting rules into @R 28 | syntax include @R syntax/r.vim 29 | if exists("b:current_syntax") 30 | unlet b:current_syntax 31 | endif 32 | 33 | if exists("g:rmd_syn_hl_chunk") 34 | " highlight R code inside chunk header 35 | syntax match rmdChunkDelim "^[ \t]*```{r" contained 36 | syntax match rmdChunkDelim "}$" contained 37 | else 38 | syntax match rmdChunkDelim "^[ \t]*```{r.*}$" contained 39 | endif 40 | syntax match rmdChunkDelim "^[ \t]*```$" contained 41 | syntax region rmdChunk start="^[ \t]*``` *{r.*}$" end="^[ \t]*```$" contains=@R,rmdChunkDelim keepend fold 42 | 43 | " also match and syntax highlight in-line R code 44 | syntax match rmdEndInline "`" contained 45 | syntax match rmdBeginInline "`r " contained 46 | syntax region rmdrInline start="`r " end="`" contains=@R,rmdBeginInline,rmdEndInline keepend 47 | 48 | " match slidify special marker 49 | syntax match rmdSlidifySpecial "\*\*\*" 50 | 51 | 52 | if rmdIsPandoc == 0 53 | syn match rmdBlockQuote /^\s*>.*\n\(.*\n\@" contains=@texMathZoneGroup 65 | " Region 66 | syntax match rmdLaTeXRegDelim "\$\$" contained 67 | syntax match rmdLaTeXRegDelim "\$\$latex$" contained 68 | syntax region rmdLaTeXRegion start="^\$\$" skip="\\\$" end="\$\$$" contains=@LaTeX,rmdLaTeXSt,rmdLaTeXRegDelim keepend 69 | syntax region rmdLaTeXRegion2 start="^\\\[" end="\\\]" contains=@LaTeX,rmdLaTeXSt,rmdLaTeXRegDelim keepend 70 | hi def link rmdLaTeXSt Statement 71 | hi def link rmdLaTeXInlDelim Special 72 | hi def link rmdLaTeXRegDelim Special 73 | endif 74 | 75 | syn sync match rmdSyncChunk grouphere rmdChunk "^[ \t]*``` *{r" 76 | 77 | hi def link rmdChunkDelim Special 78 | hi def link rmdBeginInline Special 79 | hi def link rmdEndInline Special 80 | hi def link rmdBlockQuote Comment 81 | hi def link rmdSlidifySpecial Special 82 | 83 | let b:current_syntax = "rmd" 84 | set nocindent 85 | 86 | syn iskeyword=@,48-57,_,192-255 87 | 88 | " vim: ts=8 sw=2 89 | -------------------------------------------------------------------------------- /sublime/snippets/ms_bellman_ford_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | class Edge { 4 | int from, to, weight; 5 | public Edge(int from, int to, int weight) { 6 | this.from = from; 7 | this.to = to; 8 | this.weight = weight; 9 | } 10 | } 11 | 12 | // edges - The adjacency list 13 | // n - the number of nodes 14 | // s - the source node index 15 | static Double[] bellman_ford(HashMap < Integer, List<Edge>> edges, int n, int s) { 16 | 17 | Double[] dist = new Double[n]; 18 | Arrays.fill(dist, Double.POSITIVE_INFINITY); 19 | dist[s] = 0.0; 20 | 21 | // int[] prev = new int[n]; // Tracks best parent nodes 22 | // Arrays.fill(prev, -1); 23 | 24 | for (int i = 0; i < n - 1; i++) { 25 | for (int from = 0; from < n; from++) { 26 | List<Edge> edgeList = edges.get(from); 27 | if (edgeList != null && dist[from] != Double.POSITIVE_INFINITY) { 28 | for (int j = 0; j < edgeList.size(); j++) { 29 | Edge edge = edgeList.get(j); 30 | int weight = edge.weight; 31 | int to = edge.to; 32 | if (dist[to] == Double.POSITIVE_INFINITY) { 33 | dist[to] = weight + dist[from]; 34 | } else if (weight + dist[from] < dist[to]) { 35 | dist[to] = weight + dist[from]; 36 | // prev[to] = from; // Track best parent 37 | } 38 | } 39 | } 40 | } 41 | } 42 | 43 | // Re-run bellman ford identifying negative cycles 44 | for (int from = 0; from < n; from++) { 45 | List<Edge> edgeList = edges.get(from); 46 | if (edgeList != null && dist[from] != Double.POSITIVE_INFINITY) { 47 | for (int j = 0; j < edgeList.size(); j++) { 48 | Edge edge = edgeList.get(j); 49 | int weight = edge.weight; 50 | int to = edge.to; 51 | if (weight + dist[from] < dist[to]) { 52 | 53 | dist[to] = Double.NEGATIVE_INFINITY; 54 | // prev[to] = from; // Track best parent 55 | 56 | // We found a negative cycle so try to spread the 57 | // negativeness everywhere, like a disease using BFS! 58 | boolean[] visited = new boolean[n]; 59 | Queue<Integer> q = new LinkedList < > (); 60 | q.offer(from); 61 | while (!q.isEmpty()) { 62 | int _from = q.poll(); 63 | List<Edge> _edges = edges.get(_from); 64 | if (_edges != null) { 65 | for (Edge _edge: _edges) { 66 | int _to = _edge.to; 67 | if (!visited[_to]) { 68 | q.offer(_to); 69 | visited[_to] = true; 70 | if (dist[_from] == Double.NEGATIVE_INFINITY) { 71 | dist[_to] = Double.NEGATIVE_INFINITY; 72 | } 73 | } 74 | } 75 | } 76 | } 77 | 78 | } 79 | } 80 | } 81 | } 82 | 83 | // or return 'prev' if you need that 84 | return dist; 85 | 86 | } 87 | 88 | 89 | 90 | ms_bellman_ford 91 | 92 | source.java 93 | 94 | -------------------------------------------------------------------------------- /vim/vim/colors/sweyla988775.vim: -------------------------------------------------------------------------------- 1 | " Generated by Color Theme Generator at Sweyla 2 | " http://sweyla.com/themes/seed/988775/ 3 | 4 | set background=dark 5 | 6 | hi clear 7 | 8 | if exists("syntax_on") 9 | syntax reset 10 | endif 11 | 12 | " Set environment to 256 colours 13 | set t_Co=256 14 | 15 | let colors_name = "sweyla988775" 16 | 17 | if version >= 700 18 | hi CursorLine guibg=#000000 ctermbg=16 19 | hi CursorColumn guibg=#000000 ctermbg=16 20 | hi MatchParen guifg=#FFA50C guibg=#000000 gui=bold ctermfg=214 ctermbg=16 cterm=bold 21 | hi Pmenu guifg=#FFFFFF guibg=#323232 ctermfg=255 ctermbg=236 22 | hi PmenuSel guifg=#FFFFFF guibg=#B3A9BD ctermfg=255 ctermbg=249 23 | endif 24 | 25 | " Background and menu colors 26 | hi Cursor guifg=NONE guibg=#FFFFFF ctermbg=255 gui=none 27 | hi Normal guifg=#FFFFFF guibg=#000000 gui=none ctermfg=255 ctermbg=16 cterm=none 28 | hi NonText guifg=#FFFFFF guibg=#0F0F0F gui=none ctermfg=255 ctermbg=233 cterm=none 29 | hi LineNr guifg=#303030 guibg=#191919 gui=none ctermfg=236 ctermbg=234 cterm=none 30 | hi StatusLine guifg=#FFFFFF guibg=#232125 gui=italic ctermfg=255 ctermbg=235 cterm=italic 31 | hi StatusLineNC guifg=#FFFFFF guibg=#282828 gui=none ctermfg=255 ctermbg=235 cterm=none 32 | hi VertSplit guifg=#FFFFFF guibg=#191919 gui=none ctermfg=255 ctermbg=234 cterm=none 33 | hi Folded guifg=#FFFFFF guibg=#000000 gui=none ctermfg=255 ctermbg=16 cterm=none 34 | hi Title guifg=#B3A9BD guibg=NONE gui=bold ctermfg=249 ctermbg=NONE cterm=bold 35 | hi Visual guifg=#FFB053 guibg=#323232 gui=none ctermfg=215 ctermbg=236 cterm=none 36 | hi SpecialKey guifg=#7AB96B guibg=#0F0F0F gui=none ctermfg=107 ctermbg=233 cterm=none 37 | "hi DiffChange guibg=#4C4C00 gui=none ctermbg=58 cterm=none 38 | "hi DiffAdd guibg=#25254C gui=none ctermbg=235 cterm=none 39 | "hi DiffText guibg=#663266 gui=none ctermbg=241 cterm=none 40 | "hi DiffDelete guibg=#3F0000 gui=none ctermbg=52 cterm=none 41 | 42 | hi DiffChange guibg=#4C4C09 gui=none ctermbg=234 cterm=none 43 | hi DiffAdd guibg=#252556 gui=none ctermbg=17 cterm=none 44 | hi DiffText guibg=#66326E gui=none ctermbg=22 cterm=none 45 | hi DiffDelete guibg=#3F000A gui=none ctermbg=0 ctermfg=196 cterm=none 46 | hi TabLineFill guibg=#5E5E5E gui=none ctermbg=235 ctermfg=228 cterm=none 47 | hi TabLineSel guifg=#FFB053 gui=bold ctermfg=215 cterm=bold 48 | 49 | 50 | " Syntax highlighting 51 | hi Comment guifg=#B3A9BD gui=none ctermfg=249 cterm=none 52 | hi Constant guifg=#7AB96B gui=none ctermfg=107 cterm=none 53 | hi Number guifg=#7AB96B gui=none ctermfg=107 cterm=none 54 | hi Identifier guifg=#80479F gui=none ctermfg=97 cterm=none 55 | hi Statement guifg=#FFA50C gui=none ctermfg=214 cterm=none 56 | hi Function guifg=#D694A3 gui=none ctermfg=175 cterm=none 57 | hi Special guifg=#4EC663 gui=none ctermfg=77 cterm=none 58 | hi PreProc guifg=#4EC663 gui=none ctermfg=77 cterm=none 59 | hi Keyword guifg=#FFA50C gui=none ctermfg=214 cterm=none 60 | hi String guifg=#FFB053 gui=none ctermfg=215 cterm=none 61 | hi Type guifg=#F19906 gui=none ctermfg=208 cterm=none 62 | hi pythonBuiltin guifg=#80479F gui=none ctermfg=97 cterm=none 63 | hi TabLineFill guifg=#664621 gui=none ctermfg=58 cterm=none 64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /sublime/snippets/ms_convexHull_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | createConvexHull(Point2D[] pts) { 3 | 4 | int k1, k2; 5 | int N = pts.length; 6 | Stack hull = new Stack(); 7 | Point2D[] points = new Point2D.Double[N]; 8 | for (int i = 0; i < N; i++) points[i] = pts[i]; 9 | Arrays.sort(points, new PointOrder()); 10 | Arrays.sort(points, 1, N, new PolarOrder(points[0])); 11 | hull.push(points[0]); 12 | for (k1 = 1; k1 < N; k1++) 13 | if (!points[0].equals(points[k1])) break; 14 | if (k1 == N) return null; 15 | for (k2 = k1 + 1; k2 < N; k2++) 16 | if (ccw(points[0], points[k1], points[k2]) != 0) break; 17 | hull.push(points[k2-1]); 18 | for (int i = k2; i < N; i++) { 19 | Point2D top = hull.pop(); 20 | while (ccw(hull.peek(), top, points[i]) <= 0) 21 | top = hull.pop(); 22 | hull.push(top); 23 | hull.push(points[i]); 24 | } 25 | return hull; 26 | } 27 | 28 | // Compare other points relative to polar angle (between 0 and 2pi) they make with this Point 29 | static class PolarOrder implements Comparator { 30 | Point2D pt; 31 | public PolarOrder(Point2D pt) { this.pt = pt; } 32 | @Override public int compare(Point2D q1, Point2D q2) { 33 | double dx1 = q1.getX() - pt.getX(); 34 | double dy1 = q1.getY() - pt.getY(); 35 | double dx2 = q2.getX() - pt.getX(); 36 | double dy2 = q2.getY() - pt.getY(); 37 | if (dy1 >= 0 && dy2 < 0) return -1; 38 | else if (dy2 >= 0 && dy1 < 0) return +1; 39 | else if (dy1 == 0 && dy2 == 0) { 40 | if (dx1 >= 0 && dx2 < 0) return -1; 41 | else if (dx2 >= 0 && dx1 < 0) return +1; 42 | else return 0; 43 | } 44 | else return -ccw(pt, q1, q2); 45 | } 46 | } 47 | 48 | // Put lower Y co-ordinates first, with lower X in the case of ties 49 | static class PointOrder implements Comparator { 50 | @Override public int compare(Point2D q1, Point2D q2) { 51 | if (q1.getY() < q2.getY()) return -1; 52 | if (q1.getY() == q2.getY()) { 53 | if (q1.getX() < q2.getX()) return -1; 54 | else if (q1.getX() > q2.getX()) return 1; 55 | else return 0; 56 | } 57 | return 1; 58 | } 59 | } 60 | 61 | static int ccw(Point2D a, Point2D b, Point2D c) { 62 | double area = (b.getX() - a.getX())*(c.getY() - a.getY()) - (b.getY() - a.getY())*(c.getX() - a.getX()); 63 | return (int) Math.signum(area); 64 | } 65 | 66 | // check that boundary of hull is strictly convex 67 | static boolean isConvex(Stack hull) { 68 | int N = hull.size(); 69 | if (N <= 2) return true; 70 | Point2D[] points = new Point2D.Double[N]; 71 | int n = 0; 72 | for (Point2D p : hull) points[n++] = p; 73 | for (int i = 0; i < N; i++) 74 | if (ccw(points[i], points[(i+1) % N], points[(i+2) % N]) <= 0) 75 | return false; 76 | return true; 77 | }]]> 78 | 79 | ms_convexHull 80 | 81 | source.java 82 | 83 | -------------------------------------------------------------------------------- /sublime/snippets/ms_segment_tree_java.sublime-snippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | class STNode { 4 | 5 | int minPos, maxPos, min = 0, sum = 0, lazy = 0; 6 | STNode left, right; 7 | 8 | public STNode(int l, int r) { 9 | 10 | minPos = l; 11 | maxPos = r; 12 | 13 | // Reached leaf 14 | if (l == r) { 15 | left = right = null; 16 | 17 | // Add children 18 | } else { 19 | int mid = (l + r) / 2; 20 | left = new STNode(l, mid); 21 | right = new STNode(mid + 1, r); 22 | } 23 | 24 | } 25 | 26 | // Adjust all values in the interval [l, r) by a particular amount 27 | public void update(int l, int r, int change) { 28 | 29 | // Do lazy updates to children 30 | propagate(); 31 | 32 | // Node's range fits inside query range 33 | if (l <= minPos && maxPos < r) { 34 | 35 | sum += change * (maxPos - minPos); 36 | min += change; 37 | 38 | // Lazily propagate update to children 39 | if (left != null) 40 | left.lazy += change; 41 | if (right != null) 42 | right.lazy += change; 43 | 44 | // Ranges do not overlap 45 | } else if (r <= minPos || l > maxPos) { 46 | 47 | // Do nothing 48 | 49 | // Ranges partially overlap 50 | } else { 51 | 52 | left.update(l, r, change); 53 | right.update(l, r, change); 54 | sum = left.sum + right.sum; 55 | min = Math.min(left.min, right.min); 56 | 57 | } 58 | 59 | } 60 | 61 | // Get the sum in the interval [l, r) 62 | public int sum(int l, int r) { 63 | 64 | // Do lazy updates to children 65 | propagate(); 66 | 67 | // Node's range fits inside query range 68 | if (l <= minPos && maxPos < r) 69 | return min; 70 | 71 | // Ranges do not overlap 72 | else if (r <= minPos || l > maxPos) 73 | return 0; 74 | 75 | // Ranges partially overlap 76 | else 77 | return left.sum(l, r) + right.sum(l, r); 78 | 79 | } 80 | 81 | // Get the minimum value in the interval [l, r) 82 | public int min(int l, int r) { 83 | 84 | // Do lazy updates to children 85 | propagate(); 86 | 87 | // Node's range fits inside query range 88 | if (l <= minPos && maxPos < r) 89 | return min; 90 | 91 | // Ranges do not overlap 92 | else if (r <= minPos || l > maxPos) 93 | return Integer.MAX_VALUE; 94 | 95 | // Ranges partially overlap 96 | else 97 | return Math.min(left.min(l, r), right.min(l, r)); 98 | 99 | } 100 | 101 | // Does any updates to this node that haven't been done yet, and lazily updates its children 102 | // NOTE: This method must be called before updating or accessing a node 103 | public void propagate() { 104 | 105 | if (lazy != 0) { 106 | 107 | sum += lazy * (maxPos - minPos); 108 | min += lazy; 109 | 110 | // Lazily propagate updates to children 111 | if (left != null) 112 | left.lazy += lazy; 113 | if (right != null) 114 | right.lazy += lazy; 115 | 116 | lazy = 0; 117 | 118 | } 119 | 120 | } 121 | 122 | } 123 | 124 | 125 | 126 | ms_segment_tree 127 | 128 | source.java 129 | 130 | -------------------------------------------------------------------------------- /vim/vim/colors/two2tango.vim: -------------------------------------------------------------------------------- 1 | " Vim color file 2 | " Name: two2tango 3 | " Maintainer: Erik Falor 4 | " Version: 1.2 5 | " Date: Tue 05/25/2010 6 | " 7 | " History: 8 | " 1.2 - Thanks to Max Battcher for his suggestion for VisualNOS highlighting. 9 | " Added styling for non-GUI tabline elements. 10 | " 11 | " 1.1 - Big props to Panos Laganakos for the 12 | " original darktango.vim colorscheme upon which this scheme is based. 13 | 14 | set background=dark 15 | if version > 580 16 | " no guarantees for version 5.8 and below, but this makes it stop 17 | " complaining 18 | hi clear 19 | if exists("syntax_on") 20 | syntax reset 21 | endif 22 | endif 23 | 24 | let g:colors_name="two2tango" 25 | 26 | "Tango palette 27 | "http://tango.freedesktop.org/Tango_Icon_Theme_Guidelines 28 | " {{{ 29 | let s:Butter = ['#fce94f', '#edd400', '#c4a000'] 30 | let s:Chameleon = ['#8ae234', '#73d216', '#4e9a06'] 31 | let s:Orange = ['#fcaf3e', '#f57900', '#ce5c00'] 32 | let s:SkyBlue = ['#729fcf', '#3465a4', '#204a87'] 33 | let s:Plum = ['#ad7fa8', '#75507b', '#5c3566'] 34 | let s:Chocolate = ['#e9b96e', '#c17d11', '#8f5902'] 35 | let s:ScarletRed = ['#ef2929', '#cc0000', '#a40000'] 36 | let s:Aluminium = ['#eeeeec', '#d3d7cf', '#babdb6', 37 | \'#888a85', '#555753', '#2e3436'] 38 | "This color isn't part of the Tango Palette; I use it because there 39 | "isn't a Tango color that provides enough contrast 40 | let s:Background = '#212628' 41 | " }}} 42 | 43 | execute "hi Normal guibg=" . s:Aluminium[5] . " guifg=" . s:Aluminium[1] 44 | 45 | " {{{ syntax 46 | execute "hi Comment gui=italic guifg=" . s:Aluminium[3] 47 | execute "hi Conditional gui=bold guifg=" . s:Butter[2] 48 | execute "hi Constant guifg=" . s:Chocolate[1] 49 | execute "hi Error guifg=" . s:Aluminium[0] . " guibg=" . s:ScarletRed[2] 50 | execute "hi Identifier guifg=" . s:Orange[2] 51 | execute "hi Ignore guifg=" . s:Aluminium[5] . " guibg=" . s:Aluminium[5] 52 | execute "hi Operator guifg=" . s:Butter[1] 53 | execute "hi PreProc guifg=" . s:Chocolate[0] 54 | execute "hi Repeat gui=bold guifg=" . s:Butter[2] 55 | execute "hi Special guifg=" . s:SkyBlue[1] 56 | execute "hi Statement guifg=" . s:Aluminium[3] 57 | execute "hi String guifg=" . s:SkyBlue[0] 58 | execute "hi Title guifg=" . s:Aluminium[0] 59 | execute "hi Todo gui=bold guisp=NONE guibg=" . s:Orange[2] 60 | \. " guifg=" . s:Aluminium[0] 61 | execute "hi Type guifg=" . s:Orange[2] 62 | execute "hi Underlined gui=underline guifg=" . s:SkyBlue[0] 63 | " }}} 64 | 65 | " {{{ groups 66 | execute "hi Cursor guibg=" . s:ScarletRed[0] . " guifg=" . s:Aluminium[5] 67 | execute "hi CursorIM guibg=" . s:Chameleon[0] . " guifg=" . s:Aluminium[5] 68 | execute "hi CursorLine guibg=" . s:Background 69 | execute "hi CursorColumn guibg=" . s:Background 70 | execute "hi Directory guifg=" . s:SkyBlue[0] 71 | execute "hi ErrorMsg guifg=" . s:Aluminium[0] . " guibg=" . s:ScarletRed[2] 72 | execute "hi FoldColumn guibg=" . s:Aluminium[5] . " guifg=" . s:Aluminium[4] 73 | execute "hi Folded guibg=" . s:Aluminium[4] . " guifg=" . s:Aluminium[2] 74 | execute "hi IncSearch gui=none guibg=" . s:Butter[0] . " guifg=" . s:Butter[2] 75 | execute "hi LineNr guibg=" . s:Aluminium[5] . " guifg=" . s:Aluminium[4] 76 | execute "hi MatchParen guibg=" . s:Aluminium[2] . " guifg=" . s:Aluminium[5] 77 | execute "hi ModeMsg guifg=" . s:Orange[2] 78 | execute "hi MoreMsg guifg=" . s:Orange[2] 79 | execute "hi NonText guibg=" . s:Aluminium[5] . " guifg=" . s:Aluminium[4] 80 | execute "hi Pmenu guibg=" . s:Aluminium[2] . " guifg=" . s:Aluminium[4] 81 | execute "hi PmenuSel guibg=" . s:Aluminium[0] . " guifg=" . s:Aluminium[5] 82 | execute "hi Question guifg=" . s:Plum[0] 83 | execute "hi Search guibg=" . s:Butter[0] . " guifg=" . s:Butter[2] 84 | execute "hi SpecialKey guifg=" . s:Orange[2] 85 | execute "hi StatusLine gui=none guibg=" . s:Orange[2] . " guifg=" . s:Aluminium[0] 86 | execute "hi StatusLineNC gui=none guibg=" . s:Aluminium[3] . " guifg=" . s:Aluminium[5] 87 | execute "hi TabLine guibg=" . s:Aluminium[3] . " guifg=" . s:Aluminium[0] 88 | execute "hi TabLineFill guibg=" . s:Aluminium[0] 89 | execute "hi TabLineSel guibg=" . s:Aluminium[5] . " guifg=" . s:Aluminium[0] 90 | execute "hi Tooltip gui=none guibg=" . s:SkyBlue[0] . " guifg=" . s:Aluminium[0] 91 | execute "hi VertSplit gui=none guibg=" . s:Aluminium[3] . " guifg=" . s:Aluminium[5] 92 | execute "hi Visual guibg=" . s:Orange[0] . " guifg=" . s:Orange[2] 93 | hi VisualNOS gui=none guibg=black 94 | execute "hi WarningMsg guifg=" . s:Orange[0] 95 | execute "hi WildMenu guifg=" . s:Butter[2] . " guibg=" . s:Butter[0] 96 | "hi Menu TODO 97 | "hi Scrollbar TODO 98 | " }}} 99 | 100 | " {{{ terminal 101 | " TODO 102 | " }}} 103 | 104 | " vim: sw=4 foldmethod=marker 105 | -------------------------------------------------------------------------------- /vim/vim/colors/guardian.vim: -------------------------------------------------------------------------------- 1 | " Vim color file 2 | " Maintainer: Anders Korte 3 | " Last Change: 6 Apr 2005 4 | 5 | " Guardian color scheme 1.2 6 | 7 | " Rich-syntax colors for source editing and other vimming. 8 | 9 | set background=dark 10 | hi clear 11 | syntax reset 12 | 13 | " Colors for the User Interface. 14 | 15 | hi Cursor guibg=#cc4455 guifg=white gui=bold ctermbg=4 ctermfg=15 16 | hi link CursorIM Cursor 17 | hi Normal guibg=#332211 guifg=white gui=none ctermbg=0 ctermfg=15 18 | hi NonText guibg=#445566 guifg=#ffeecc gui=bold ctermbg=8 ctermfg=14 19 | hi Visual guibg=#557799 guifg=white gui=none ctermbg=9 ctermfg=15 20 | 21 | hi Linenr guibg=bg guifg=#aaaaaa gui=none ctermbg=bg ctermfg=7 22 | 23 | hi Directory guibg=bg guifg=#337700 gui=none ctermbg=bg ctermfg=10 24 | 25 | hi IncSearch guibg=#0066cc guifg=white gui=none ctermbg=1 ctermfg=15 26 | hi link Seach IncSearch 27 | 28 | hi SpecialKey guibg=bg guifg=fg gui=none ctermbg=bg ctermfg=fg 29 | hi Titled guibg=bg guifg=fg gui=none ctermbg=bg ctermfg=fg 30 | 31 | hi ErrorMsg guibg=bg guifg=#ff0000 gui=bold ctermbg=bg ctermfg=12 32 | hi ModeMsg guibg=bg guifg=#ffeecc gui=none ctermbg=bg ctermfg=14 33 | hi link MoreMsg ModeMsg 34 | hi Question guibg=bg guifg=#ccffcc gui=bold ctermbg=bg ctermfg=10 35 | hi link WarningMsg ErrorMsg 36 | 37 | hi StatusLine guibg=#ffeecc guifg=black gui=bold ctermbg=14 ctermfg=0 38 | hi StatusLineNC guibg=#cc4455 guifg=white gui=none ctermbg=4 ctermfg=11 39 | hi VertSplit guibg=#cc4455 guifg=white gui=none ctermbg=4 ctermfg=11 40 | 41 | hi DiffAdd guibg=#446688 guifg=fg gui=none ctermbg=1 ctermfg=fg 42 | hi DiffChange guibg=#558855 guifg=fg gui=none ctermbg=2 ctermfg=fg 43 | hi DiffDelete guibg=#884444 guifg=fg gui=none ctermbg=4 ctermfg=fg 44 | hi DiffText guibg=#884444 guifg=fg gui=bold ctermbg=4 ctermfg=fg 45 | 46 | " Colors for Syntax Highlighting. 47 | 48 | hi Comment guibg=#334455 guifg=#dddddd gui=none ctermbg=8 ctermfg=7 49 | 50 | hi Constant guibg=bg guifg=white gui=bold ctermbg=8 ctermfg=15 51 | hi String guibg=bg guifg=#ffffcc gui=italic ctermbg=bg ctermfg=14 52 | hi Character guibg=bg guifg=#ffffcc gui=bold ctermbg=bg ctermfg=14 53 | hi Number guibg=bg guifg=#bbddff gui=bold ctermbg=1 ctermfg=15 54 | hi Boolean guibg=bg guifg=#bbddff gui=none ctermbg=1 ctermfg=15 55 | hi Float guibg=bg guifg=#bbddff gui=bold ctermbg=1 ctermfg=15 56 | 57 | hi Identifier guibg=bg guifg=#ffddaa gui=bold ctermbg=bg ctermfg=12 58 | hi Function guibg=bg guifg=#ffddaa gui=bold ctermbg=bg ctermfg=12 59 | hi Statement guibg=bg guifg=#ffffcc gui=bold ctermbg=bg ctermfg=14 60 | 61 | hi Conditional guibg=bg guifg=#ff6666 gui=bold ctermbg=bg ctermfg=12 62 | hi Repeat guibg=bg guifg=#ff9900 gui=bold ctermbg=4 ctermfg=14 63 | hi Label guibg=bg guifg=#ffccff gui=bold ctermbg=bg ctermfg=13 64 | hi Operator guibg=bg guifg=#cc9966 gui=bold ctermbg=6 ctermfg=15 65 | hi Keyword guibg=bg guifg=#66ffcc gui=bold ctermbg=bg ctermfg=10 66 | hi Exception guibg=bg guifg=#66ffcc gui=bold ctermbg=bg ctermfg=10 67 | 68 | hi PreProc guibg=bg guifg=#ffcc99 gui=bold ctermbg=4 ctermfg=14 69 | hi Include guibg=bg guifg=#99cc99 gui=bold ctermbg=bg ctermfg=10 70 | hi link Define Include 71 | hi link Macro Include 72 | hi link PreCondit Include 73 | 74 | hi Type guibg=bg guifg=#ff7788 gui=bold ctermbg=bg ctermfg=12 75 | hi StorageClass guibg=bg guifg=#99cc99 gui=bold ctermbg=bg ctermfg=10 76 | hi Structure guibg=bg guifg=#99ff99 gui=bold ctermbg=bg ctermfg=10 77 | hi Typedef guibg=bg guifg=#99cc99 gui=italic ctermbg=bg ctermfg=10 78 | 79 | hi Special guibg=bg guifg=#bbddff gui=bold ctermbg=1 ctermfg=15 80 | hi SpecialChar guibg=bg guifg=#bbddff gui=bold ctermbg=1 ctermfg=15 81 | hi Tag guibg=bg guifg=#bbddff gui=bold ctermbg=1 ctermfg=15 82 | hi Delimiter guibg=bg guifg=fg gui=bold ctermbg=1 ctermfg=fg 83 | hi SpecialComment guibg=#334455 guifg=#dddddd gui=italic ctermbg=1 ctermfg=15 84 | hi Debug guibg=bg guifg=#ff9999 gui=none ctermbg=8 ctermfg=12 85 | 86 | hi Underlined guibg=bg guifg=#99ccff gui=underline ctermbg=bg ctermfg=9 cterm=underline 87 | 88 | hi Title guibg=#445566 guifg=white gui=bold ctermbg=1 ctermfg=15 89 | hi Ignore guibg=bg guifg=#cccccc gui=italic ctermbg=bg ctermfg=8 90 | hi Error guibg=#ff0000 guifg=white gui=bold ctermbg=12 ctermfg=15 91 | hi Todo guibg=#556677 guifg=#ff0000 gui=bold ctermbg=1 ctermfg=12 92 | 93 | hi htmlH2 guibg=bg guifg=fg gui=bold ctermbg=8 ctermfg=fg 94 | hi link htmlH3 htmlH2 95 | hi link htmlH4 htmlH3 96 | hi link htmlH5 htmlH4 97 | hi link htmlH6 htmlH5 98 | 99 | " And finally. 100 | 101 | let g:colors_name = "Guardian" 102 | let colors_name = "Guardian" 103 | 104 | -------------------------------------------------------------------------------- /hyper/hyper.js: -------------------------------------------------------------------------------- 1 | //Future versions of Hyper may add additional config options, 2 | // which will not automatically be merged into this file. 3 | // See https://hyper.is#cfg for all currently supported options. 4 | 5 | module.exports = { 6 | config: { 7 | 8 | modifierKeys: { 9 | altIsMeta: true 10 | }, 11 | 12 | // default font size in pixels for all tabs 13 | fontSize: 18, 14 | 15 | // font family with optional fallbacks 16 | // fontFamily: 'Menlo, "DejaVu Sans Mono", Consolas, "Lucida Console", monospace', 17 | 18 | fontFamily: 'Menlo, Monaco, "DejaVu Sans Mono", "Lucida Console", monospace', 19 | 20 | // terminal cursor background color and opacity (hex, rgb, hsl, hsv, hwb or cmyk) 21 | // cursorColor: 'rgba(248,28,229,0.8)', 22 | 23 | // `BEAM` for |, `UNDERLINE` for _, `BLOCK` for █ 24 | cursorShape: 'BLOCK', 25 | 26 | // set to true for blinking cursor 27 | cursorBlink: false, 28 | 29 | // color of the text 30 | foregroundColor: '#fff', 31 | 32 | // terminal background color 33 | // backgroundColor: '#000', 34 | 35 | // border color (window, tabs) 36 | // borderColor: '#333', 37 | 38 | // custom css to embed in the main window 39 | css: '', 40 | 41 | // custom css to embed in the terminal window 42 | termCSS: '', 43 | 44 | // set to `true` (without backticks) if you're using a Linux setup that doesn't show native menus 45 | // default: `false` on Linux, `true` on Windows (ignored on macOS) 46 | showHamburgerMenu: '', 47 | 48 | // set to `false` if you want to hide the minimize, maximize and close buttons 49 | // additionally, set to `'left'` if you want them on the left, like in Ubuntu 50 | // default: `true` on windows and Linux (ignored on macOS) 51 | showWindowControls: '', 52 | 53 | // custom padding (css format, i.e.: `top right bottom left`) 54 | padding: '12px 14px', 55 | 56 | // the full list. if you're going to provide the full color palette, 57 | // including the 6 x 6 color cubes and the grayscale map, just provide 58 | // an array here instead of a color map object 59 | 60 | colors: { 61 | black: '#000000', 62 | red: '#ff0000', 63 | green: '#33ff00', 64 | yellow: '#ffff00', 65 | blue: '#0066ff', 66 | magenta: '#cc00ff', 67 | cyan: '#00ffff', 68 | white: '#d0d0d0', 69 | lightBlack: '#808080', 70 | lightRed: '#ff0000', 71 | lightGreen: '#33ff00', 72 | lightYellow: '#ffff00', 73 | lightBlue: '#0066ff', 74 | lightMagenta: '#cc00ff', 75 | lightCyan: '#00ffff', 76 | lightWhite: '#ffffff' 77 | }, 78 | 79 | 80 | // the shell to run when spawning a new session (i.e. /usr/local/bin/fish) 81 | // if left empty, your system's login shell will be used by default 82 | // make sure to use a full path if the binary name doesn't work 83 | // (e.g `C:\\Windows\\System32\\bash.exe` instead of just `bash.exe`) 84 | // if you're using powershell, make sure to remove the `--login` below 85 | 86 | shell: '/usr/local/bin/fish', 87 | // shell: '/bin/bash', 88 | 89 | // for setting shell arguments (i.e. for using interactive shellArgs: ['-i']) 90 | // by default ['--login'] will be used 91 | shellArgs: ['--login'], 92 | 93 | // for environment variables 94 | env: {}, 95 | 96 | // set to false for no bell 97 | bell: false, //'SOUND', 98 | 99 | // if true, selected text will automatically be copied to the clipboard 100 | copyOnSelect: false 101 | 102 | // if true, on right click selected text will be copied or pasted if no 103 | // selection is present (true by default on Windows) 104 | // quickEdit: true 105 | 106 | // URL to custom bell 107 | // bellSoundURL: 'http://example.com/bell.mp3', 108 | 109 | // for advanced config flags please refer to https://hyper.is/#cfg 110 | 111 | }, 112 | 113 | // a list of plugins to fetch and install from npm 114 | // format: [@org/]project[#version] 115 | // examples: 116 | // `hyperpower` 117 | // `@company/project` 118 | // `project#1.0.1` 119 | plugins: [ 120 | 121 | // Better link clicking 122 | 'hyperlinks', 123 | 124 | // Displays a status bar with neat info 125 | 'hyper-statusline', 126 | 127 | // Makes cursor blink 128 | 'hyper-blink', 129 | 130 | // Pimps hyper tabs 131 | // 'hyper-tabs-enhanced', 132 | 133 | // Music 134 | 'hyper-spotify', 135 | 136 | // Git rocket! 137 | 'gitrocket', 138 | 139 | // New tabs open in the same CWD 140 | 'hypercwd' 141 | 142 | // Themes: 143 | // 'hyperterm-atom-dark', 144 | // 'hyper-material-theme' 145 | 146 | //'hyperline' 147 | //'hyperpower' 148 | ], 149 | 150 | 151 | // https://github.com/zeit/hyperlinks 152 | hyperlinks: { 153 | clickAction: 'open', 154 | defaultBrowser: true 155 | }, 156 | 157 | // Hyper tabs plugin config 158 | /* 159 | hyperTabs: { 160 | // closeAlign: 'right', 161 | // activityColor: 'salmon', 162 | tabIconsColored: false, // defaults to false 163 | tabIcons: true, // defaults to true 164 | border: false, // defaults to false 165 | trafficButtons: false, // defaults to false 166 | }, 167 | 168 | MaterialTheme: { 169 | // Set the theme variant, 170 | // OPTIONS: 'Darker', 'Palenight', '' 171 | theme: 'Darker', 172 | 173 | // Set the rgba() app background opacity, useful when enableVibrance is true 174 | // OPTIONS: From 0.1 to 1 175 | backgroundOpacity: '0.1', 176 | 177 | // Set the accent color for the current active tab 178 | accentColor: '#64FFDA', 179 | 180 | // Mac Only. Need restart. Enable the vibrance and blurred background 181 | // OPTIONS: 'dark', 'ultra-dark', 'bright' 182 | // NOTE: The backgroundOpacity should be between 0.1 and 0.9 to see the effect. 183 | vibrancy: 'dark' 184 | }, 185 | */ 186 | 187 | // in development, you can create a directory under 188 | // `~/.hyper_plugins/local/` and include it here 189 | // to load it and avoid it being `npm install`ed 190 | localPlugins: [] 191 | 192 | }; 193 | 194 | 195 | -------------------------------------------------------------------------------- /vim/vim/colors/rupza.vim: -------------------------------------------------------------------------------- 1 | " Rupza 2 | " 🔱 a dark colorscheme to GUI Vim. 3 | " Created by: Felipe Sousa 4 | 5 | set background=dark 6 | 7 | if version > 580 8 | hi clear 9 | if exists("syntax_on") 10 | syntax reset 11 | endif 12 | endif 13 | 14 | set t_Co=256 15 | 16 | let g:colors_name = "rupza" 17 | 18 | hi Normal guifg=#FFFFFF guibg=#242424 guisp=#242424 gui=NONE ctermfg=15 ctermbg=235 cterm=NONE 19 | 20 | hi IncSearch guifg=#111214 guibg=#fcfcfc guisp=#fcfcfc gui=underline ctermfg=233 ctermbg=15 cterm=underline 21 | hi SpecialComment guifg=#466EFF guibg=NONE guisp=NONE gui=NONE ctermfg=69 ctermbg=NONE cterm=NONE 22 | hi Typedef guifg=#FEFFBA guibg=NONE guisp=NONE gui=NONE ctermfg=229 ctermbg=NONE cterm=NONE 23 | hi Title guifg=#FFFFFF guibg=NONE guisp=NONE gui=NONE ctermfg=15 ctermbg=NONE cterm=NONE 24 | hi Folded guifg=#FFFFFF guibg=#373737 guisp=#373737 gui=NONE ctermfg=15 ctermbg=237 cterm=NONE 25 | hi PreCondit guifg=#FFA41B guibg=NONE guisp=NONE gui=NONE ctermfg=208 ctermbg=NONE cterm=NONE 26 | hi Include guifg=#FFA41B guibg=NONE guisp=NONE gui=NONE ctermfg=208 ctermbg=NONE cterm=NONE 27 | hi StatusLineNC guifg=#696969 guibg=#ffffff guisp=#ffffff gui=NONE ctermfg=242 ctermbg=15 cterm=NONE 28 | hi NonText guifg=#A6A6A6 guibg=#222222 guisp=#222222 gui=NONE ctermfg=248 ctermbg=235 cterm=NONE 29 | hi DiffText guifg=#828282 guibg=#1D1D1D guisp=#1D1D1D gui=underline ctermfg=8 ctermbg=234 cterm=underline 30 | hi ErrorMsg guifg=#FFFFFF guibg=#FF0000 guisp=#FF0000 gui=NONE ctermfg=15 ctermbg=196 cterm=NONE 31 | hi Ignore guifg=#666666 guibg=NONE guisp=NONE gui=NONE ctermfg=241 ctermbg=NONE cterm=NONE 32 | hi Debug guifg=#466EFF guibg=NONE guisp=NONE gui=NONE ctermfg=69 ctermbg=NONE cterm=NONE 33 | hi PMenuSbar guifg=NONE guibg=#373737 guisp=#373737 gui=NONE ctermfg=NONE ctermbg=237 cterm=NONE 34 | hi Identifier guifg=#00f2ff guibg=NONE guisp=NONE gui=NONE ctermfg=14 ctermbg=NONE cterm=NONE 35 | hi SpecialChar guifg=#466EFF guibg=NONE guisp=NONE gui=NONE ctermfg=69 ctermbg=NONE cterm=NONE 36 | hi Conditional guifg=#ff7700 guibg=NONE guisp=NONE gui=NONE ctermfg=208 ctermbg=NONE cterm=NONE 37 | hi StorageClass guifg=#FEFFBA guibg=NONE guisp=NONE gui=NONE ctermfg=229 ctermbg=NONE cterm=NONE 38 | hi Todo guifg=NONE guibg=NONE guisp=NONE gui=bold,underline ctermfg=NONE ctermbg=NONE cterm=bold,underline 39 | hi Special guifg=#ff478a guibg=NONE guisp=NONE gui=NONE ctermfg=13 ctermbg=NONE cterm=NONE 40 | hi LineNr guifg=#545454 guibg=#242424 guisp=#242424 gui=NONE ctermfg=240 ctermbg=235 cterm=NONE 41 | hi StatusLine guifg=#0f0f0f guibg=#d4d4d4 guisp=#d4d4d4 gui=NONE ctermfg=233 ctermbg=188 cterm=NONE 42 | hi Label guifg=#FEFFBA guibg=NONE guisp=NONE gui=NONE ctermfg=229 ctermbg=NONE cterm=NONE 43 | hi PMenuSel guifg=#2E2E2E guibg=#62FB44 guisp=#62FB44 gui=NONE ctermfg=236 ctermbg=119 cterm=NONE 44 | hi Search guifg=#FFDABB guibg=#708090 guisp=#708090 gui=NONE ctermfg=223 ctermbg=60 cterm=NONE 45 | hi Delimiter guifg=#466EFF guibg=NONE guisp=NONE gui=NONE ctermfg=69 ctermbg=NONE cterm=NONE 46 | hi Statement guifg=#ff6363 guibg=NONE guisp=NONE gui=NONE ctermfg=9 ctermbg=NONE cterm=NONE 47 | hi Comment guifg=#878587 guibg=NONE guisp=NONE gui=NONE ctermfg=102 ctermbg=NONE cterm=NONE 48 | hi Character guifg=#DAC5FF guibg=#141414 guisp=#141414 gui=NONE ctermfg=183 ctermbg=233 cterm=NONE 49 | hi Number guifg=#ffaa42 guibg=NONE guisp=NONE gui=NONE ctermfg=215 ctermbg=NONE cterm=NONE 50 | hi Boolean guifg=#FF6262 guibg=NONE guisp=NONE gui=NONE ctermfg=9 ctermbg=NONE cterm=NONE 51 | hi Operator guifg=#ffffff guibg=NONE guisp=NONE gui=NONE ctermfg=15 ctermbg=NONE cterm=NONE 52 | hi Question guifg=#60FF5C guibg=NONE guisp=NONE gui=NONE ctermfg=83 ctermbg=NONE cterm=NONE 53 | hi DiffDelete guifg=#FF0000 guibg=#1D1D1D guisp=#1D1D1D gui=NONE ctermfg=196 ctermbg=234 cterm=NONE 54 | hi ModeMsg guifg=#60FF5C guibg=NONE guisp=NONE gui=NONE ctermfg=83 ctermbg=NONE cterm=NONE 55 | hi Define guifg=#FFA41B guibg=NONE guisp=NONE gui=NONE ctermfg=208 ctermbg=NONE cterm=NONE 56 | hi Function guifg=#faac0f guibg=NONE guisp=NONE gui=NONE ctermfg=214 ctermbg=NONE cterm=NONE 57 | hi FoldColumn guifg=#9e9e9e guibg=#242424 guisp=#242424 gui=bold ctermfg=247 ctermbg=235 cterm=bold 58 | hi PreProc guifg=#ffa41b guibg=NONE guisp=NONE gui=NONE ctermfg=208 ctermbg=NONE cterm=NONE 59 | hi Visual guifg=#FFFFFF guibg=#07077B guisp=#07077B gui=NONE ctermfg=15 ctermbg=18 cterm=NONE 60 | hi MoreMsg guifg=#60FF5C guibg=NONE guisp=NONE gui=NONE ctermfg=83 ctermbg=NONE cterm=NONE 61 | hi VertSplit guifg=#B8B8B8 guibg=#373737 guisp=#373737 gui=NONE ctermfg=250 ctermbg=237 cterm=NONE 62 | hi Exception guifg=#FEFFBA guibg=NONE guisp=NONE gui=NONE ctermfg=229 ctermbg=NONE cterm=NONE 63 | hi Keyword guifg=#FEFFBA guibg=NONE guisp=NONE gui=NONE ctermfg=229 ctermbg=NONE cterm=NONE 64 | hi Type guifg=#ff4f4f guibg=NONE guisp=NONE gui=NONE ctermfg=203 ctermbg=NONE cterm=NONE 65 | hi DiffChange guifg=#8c878c guibg=NONE guisp=NONE gui=underline ctermfg=245 ctermbg=NONE cterm=underline 66 | hi Cursor guifg=#e8e8e8 guibg=#3c3c3d guisp=#3c3c3d gui=NONE ctermfg=254 ctermbg=237 cterm=NONE 67 | hi PMenu guifg=#5A5A5A guibg=#A8FF97 guisp=#A8FF97 gui=NONE ctermfg=240 ctermbg=120 cterm=NONE 68 | hi Constant guifg=#ffffff guibg=NONE guisp=NONE gui=NONE ctermfg=15 ctermbg=NONE cterm=NONE 69 | hi Tag guifg=#466EFF guibg=NONE guisp=NONE gui=NONE ctermfg=69 ctermbg=NONE cterm=NONE 70 | hi String guifg=#bb9bfa guibg=NONE guisp=NONE gui=NONE ctermfg=183 ctermbg=NONE cterm=NONE 71 | hi PMenuThumb guifg=NONE guibg=#B8B8B8 guisp=#B8B8B8 gui=NONE ctermfg=NONE ctermbg=250 cterm=NONE 72 | hi MatchParen guifg=#2424FF guibg=#60FF5C guisp=#60FF5C gui=NONE ctermfg=21 ctermbg=83 cterm=NONE 73 | hi Repeat guifg=#FEFFBA guibg=NONE guisp=NONE gui=NONE ctermfg=229 ctermbg=NONE cterm=NONE 74 | hi Directory guifg=#94948a guibg=NONE guisp=NONE gui=underline ctermfg=246 ctermbg=NONE cterm=underline 75 | hi Structure guifg=#FEFFBA guibg=NONE guisp=NONE gui=NONE ctermfg=229 ctermbg=NONE cterm=NONE 76 | hi Macro guifg=#FFA41B guibg=NONE guisp=NONE gui=NONE ctermfg=208 ctermbg=NONE cterm=NONE 77 | hi Underlined guifg=#20b0eF guibg=NONE guisp=NONE gui=NONE ctermfg=39 ctermbg=NONE cterm=NONE 78 | hi DiffAdd guifg=#07AF07 guibg=#1D1D1D guisp=#1D1D1D gui=NONE ctermfg=34 ctermbg=234 cterm=NONE 79 | hi cursorim guifg=#192224 guibg=#536991 guisp=#536991 gui=NONE ctermfg=235 ctermbg=60 cterm=NONE 80 | hi lcursor guifg=#ffdab9 guibg=#000000 guisp=#000000 gui=NONE ctermfg=223 ctermbg=NONE cterm=NONE 81 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow_python.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | comment 10 | http://chriskempson.com 11 | name 12 | Tomorrow Night 13 | semanticClass 14 | theme.dark.tomorrow_night 15 | settings 16 | 17 | 18 | settings 19 | 20 | background 21 | #1D1F21 22 | caret 23 | #AEAFAD 24 | foreground 25 | #C5C8C6 26 | invisibles 27 | #4B4E55 28 | lineHighlight 29 | #282A2E 30 | selection 31 | #373B41 32 | 33 | 34 | 35 | name 36 | Comment 37 | scope 38 | comment 39 | settings 40 | 41 | foreground 42 | #989a98 43 | 44 | 45 | 46 | name 47 | Foreground 48 | scope 49 | keyword.operator.class, constant.other, source.php.embedded.line 50 | settings 51 | 52 | fontStyle 53 | 54 | foreground 55 | #d1d4d2 56 | 57 | 58 | 59 | name 60 | Variable, String Link, Regular Expression, Tag Name 61 | scope 62 | variable, support.other.variable, string.other.link, string.regexp, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 63 | settings 64 | 65 | foreground 66 | #de6f6f 67 | 68 | 69 | 70 | name 71 | Number, Constant, Function Argument, Tag Attribute, Embedded 72 | scope 73 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 74 | settings 75 | 76 | fontStyle 77 | 78 | foreground 79 | #e19560 80 | 81 | 82 | 83 | name 84 | Class, Support 85 | scope 86 | entity.name.class, entity.name.type.class, support.type, support.class 87 | settings 88 | 89 | fontStyle 90 | 91 | foreground 92 | #f3c976 93 | 94 | 95 | 96 | name 97 | String, Symbols, Inherited Class, Markup Heading 98 | scope 99 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 100 | settings 101 | 102 | fontStyle 103 | 104 | foreground 105 | #97cd97 106 | 107 | 108 | 109 | name 110 | Operator, Misc 111 | scope 112 | keyword.operator, constant.other.color 113 | settings 114 | 115 | foreground 116 | #68b5c1 117 | 118 | 119 | 120 | name 121 | Function, Block Level 122 | scope 123 | entity.name.function, meta.function-call, keyword.other.special-method, meta.block-level 124 | settings 125 | 126 | fontStyle 127 | 128 | foreground 129 | #6398ce 130 | 131 | 132 | 133 | name 134 | Special Method 135 | scope 136 | support.function 137 | settings 138 | 139 | fontStyle 140 | 141 | foreground 142 | #f3c976 143 | 144 | 145 | 146 | name 147 | Keyword, Storage 148 | scope 149 | keyword, storage, storage.type, entity.name.tag.css 150 | settings 151 | 152 | fontStyle 153 | 154 | foreground 155 | #cd98cd 156 | 157 | 158 | 159 | name 160 | Invalid 161 | scope 162 | invalid 163 | settings 164 | 165 | background 166 | #e26060 167 | fontStyle 168 | 169 | foreground 170 | #d1d5d2 171 | 172 | 173 | 174 | name 175 | Separator 176 | scope 177 | meta.separator 178 | settings 179 | 180 | background 181 | #84a5c2 182 | foreground 183 | #d1d5d2 184 | 185 | 186 | 187 | name 188 | Deprecated 189 | scope 190 | invalid.deprecated 191 | settings 192 | 193 | background 194 | #b99ac2 195 | fontStyle 196 | 197 | foreground 198 | #d1d5d2 199 | 200 | 201 | 202 | uuid 203 | F96223EB-1A60-4617-92F3-D24D4F13DB09 204 | colorSpaceName 205 | sRGB 206 | 207 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow Night-William.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | comment 10 | http://chriskempson.com 11 | name 12 | Tomorrow Night 13 | semanticClass 14 | theme.dark.tomorrow_night 15 | settings 16 | 17 | 18 | settings 19 | 20 | background 21 | #1D1F21 22 | caret 23 | #AEAFAD 24 | foreground 25 | #C5C8C6 26 | invisibles 27 | #4B4E55 28 | lineHighlight 29 | #282A2E 30 | selection 31 | #373B41 32 | 33 | 34 | 35 | name 36 | Comment 37 | scope 38 | comment 39 | settings 40 | 41 | foreground 42 | #989a98 43 | 44 | 45 | 46 | name 47 | Foreground 48 | scope 49 | keyword.operator.class, constant.other, source.php.embedded.line 50 | settings 51 | 52 | fontStyle 53 | 54 | foreground 55 | #d1d4d2 56 | 57 | 58 | 59 | name 60 | Variable, String Link, Regular Expression, Tag Name 61 | scope 62 | variable, support.other.variable, string.other.link, string.regexp, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 63 | settings 64 | 65 | foreground 66 | #de6f6f 67 | 68 | 69 | 70 | name 71 | Number, Constant, Function Argument, Tag Attribute, Embedded 72 | scope 73 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 74 | settings 75 | 76 | fontStyle 77 | 78 | foreground 79 | #e19560 80 | 81 | 82 | 83 | name 84 | Class, Support 85 | scope 86 | entity.name.class, entity.name.type.class, support.type, support.class 87 | settings 88 | 89 | fontStyle 90 | 91 | foreground 92 | #f3c976 93 | 94 | 95 | 96 | name 97 | String, Symbols, Inherited Class, Markup Heading 98 | scope 99 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 100 | settings 101 | 102 | fontStyle 103 | 104 | foreground 105 | #97cd97 106 | 107 | 108 | 109 | name 110 | Operator, Misc 111 | scope 112 | keyword.operator, constant.other.color 113 | settings 114 | 115 | foreground 116 | #68b5c1 117 | 118 | 119 | 120 | name 121 | Function, Block Level 122 | scope 123 | entity.name.function, meta.function-call, keyword.other.special-method, meta.block-level 124 | settings 125 | 126 | fontStyle 127 | 128 | foreground 129 | #6398ce 130 | 131 | 132 | 133 | name 134 | Special Method 135 | scope 136 | support.function 137 | settings 138 | 139 | fontStyle 140 | 141 | foreground 142 | #f3c976 143 | 144 | 145 | 146 | name 147 | Keyword, Storage 148 | scope 149 | keyword, storage, storage.type, entity.name.tag.css 150 | settings 151 | 152 | fontStyle 153 | 154 | foreground 155 | #cd98cd 156 | 157 | 158 | 159 | name 160 | Invalid 161 | scope 162 | invalid 163 | settings 164 | 165 | background 166 | #e26060 167 | fontStyle 168 | 169 | foreground 170 | #d1d5d2 171 | 172 | 173 | 174 | name 175 | Separator 176 | scope 177 | meta.separator 178 | settings 179 | 180 | background 181 | #84a5c2 182 | foreground 183 | #d1d5d2 184 | 185 | 186 | 187 | name 188 | Deprecated 189 | scope 190 | invalid.deprecated 191 | settings 192 | 193 | background 194 | #b99ac2 195 | fontStyle 196 | 197 | foreground 198 | #d1d5d2 199 | 200 | 201 | 202 | uuid 203 | F96223EB-1A60-4617-92F3-D24D4F13DB09 204 | colorSpaceName 205 | sRGB 206 | 207 | -------------------------------------------------------------------------------- /iterm2/terminal_themes/bright_lights.itermcolors: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Ansi 0 Color 6 | 7 | Blue Component 8 | 0.098039215686274508 9 | Green Component 10 | 0.098039215686274508 11 | Red Component 12 | 0.098039215686274508 13 | 14 | Ansi 1 Color 15 | 16 | Blue Component 17 | 0.35686274509803922 18 | Green Component 19 | 0.20784313725490197 20 | Red Component 21 | 1 22 | 23 | Ansi 10 Color 24 | 25 | Blue Component 26 | 0.46274509803921571 27 | Green Component 28 | 0.90980392156862744 29 | Red Component 30 | 0.71764705882352942 31 | 32 | Ansi 11 Color 33 | 34 | Blue Component 35 | 0.31764705882352939 36 | Green Component 37 | 0.76078431372549016 38 | Red Component 39 | 1 40 | 41 | Ansi 12 Color 42 | 43 | Blue Component 44 | 1 45 | Green Component 46 | 0.83529411764705885 47 | Red Component 48 | 0.46274509803921571 49 | 50 | Ansi 13 Color 51 | 52 | Blue Component 53 | 0.90588235294117647 54 | Green Component 55 | 0.46274509803921571 56 | Red Component 57 | 0.72941176470588232 58 | 59 | Ansi 14 Color 60 | 61 | Blue Component 62 | 0.70980392156862748 63 | Green Component 64 | 0.74901960784313726 65 | Red Component 66 | 0.42352941176470588 67 | 68 | Ansi 15 Color 69 | 70 | Blue Component 71 | 0.84313725490196079 72 | Green Component 73 | 0.78431372549019607 74 | Red Component 75 | 0.76078431372549016 76 | 77 | Ansi 2 Color 78 | 79 | Blue Component 80 | 0.46274509803921571 81 | Green Component 82 | 0.90980392156862744 83 | Red Component 84 | 0.71764705882352942 85 | 86 | Ansi 3 Color 87 | 88 | Blue Component 89 | 0.31764705882352939 90 | Green Component 91 | 0.76078431372549016 92 | Red Component 93 | 1 94 | 95 | Ansi 4 Color 96 | 97 | Blue Component 98 | 1 99 | Green Component 100 | 0.83137254901960789 101 | Red Component 102 | 0.46274509803921571 103 | 104 | Ansi 5 Color 105 | 106 | Blue Component 107 | 0.90588235294117647 108 | Green Component 109 | 0.46274509803921571 110 | Red Component 111 | 0.72941176470588232 112 | 113 | Ansi 6 Color 114 | 115 | Blue Component 116 | 0.70980392156862748 117 | Green Component 118 | 0.74901960784313726 119 | Red Component 120 | 0.42352941176470588 121 | 122 | Ansi 7 Color 123 | 124 | Blue Component 125 | 0.84313725490196079 126 | Green Component 127 | 0.78431372549019607 128 | Red Component 129 | 0.76078431372549016 130 | 131 | Ansi 8 Color 132 | 133 | Blue Component 134 | 0.098039215686274508 135 | Green Component 136 | 0.098039215686274508 137 | Red Component 138 | 0.098039215686274508 139 | 140 | Ansi 9 Color 141 | 142 | Blue Component 143 | 0.35686274509803922 144 | Green Component 145 | 0.20784313725490197 146 | Red Component 147 | 1 148 | 149 | Background Color 150 | 151 | Blue Component 152 | 0.098039215686274508 153 | Green Component 154 | 0.098039215686274508 155 | Red Component 156 | 0.098039215686274508 157 | 158 | Bold Color 159 | 160 | Blue Component 161 | 0.75576734293193715 162 | Green Component 163 | 0.70378700769969904 164 | Red Component 165 | 0.62377825081598537 166 | 167 | Cursor Color 168 | 169 | Blue Component 170 | 0.0 171 | Green Component 172 | 0.29334646463394165 173 | Red Component 174 | 0.95475113391876221 175 | 176 | Cursor Text Color 177 | 178 | Blue Component 179 | 0.19370138645172119 180 | Green Component 181 | 0.15575926005840302 182 | Red Component 183 | 0.0 184 | 185 | Foreground Color 186 | 187 | Blue Component 188 | 0.84313725490196079 189 | Green Component 190 | 0.78823529411764703 191 | Red Component 192 | 0.70196078431372544 193 | 194 | Selected Text Color 195 | 196 | Blue Component 197 | 0.098039215686274508 198 | Green Component 199 | 0.098039215686274508 200 | Red Component 201 | 0.098039215686274508 202 | 203 | Selection Color 204 | 205 | Blue Component 206 | 0.84313725490196079 207 | Green Component 208 | 0.78823529411764703 209 | Red Component 210 | 0.70196078431372544 211 | 212 | 213 | 214 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | comment 6 | http://chriskempson.com 7 | name 8 | Tomorrow 9 | settings 10 | 11 | 12 | settings 13 | 14 | background 15 | #FFFFFF 16 | caret 17 | #AEAFAD 18 | foreground 19 | #4D4D4C 20 | invisibles 21 | #D1D1D1 22 | lineHighlight 23 | #EFEFEF 24 | selection 25 | #D6D6D6 26 | 27 | 28 | 29 | name 30 | Comment 31 | scope 32 | comment, string.quoted.double.block.python 33 | settings 34 | 35 | foreground 36 | #999999 37 | 38 | 39 | 40 | name 41 | Foreground 42 | scope 43 | keyword.operator.class, constant.other, source.php.embedded.line 44 | settings 45 | 46 | fontStyle 47 | 48 | foreground 49 | #666969 50 | 51 | 52 | 53 | name 54 | Variable, String Link, Regular Expression, Tag Name 55 | scope 56 | variable, support.other.variable, string.other.link, string.regexp, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 57 | settings 58 | 59 | foreground 60 | #C82829 61 | 62 | 63 | 64 | name 65 | Number, Constant, Function Argument, Tag Attribute, Embedded 66 | scope 67 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 68 | settings 69 | 70 | fontStyle 71 | 72 | foreground 73 | #F5871F 74 | 75 | 76 | 77 | name 78 | Class, Support 79 | scope 80 | entity.name.class, entity.name.type.class, support.type, support.class 81 | settings 82 | 83 | fontStyle 84 | 85 | foreground 86 | #C99E00 87 | 88 | 89 | 90 | name 91 | String, Symbols, Inherited Class, Markup Heading 92 | scope 93 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 94 | settings 95 | 96 | fontStyle 97 | 98 | foreground 99 | #718C00 100 | 101 | 102 | 103 | name 104 | Operator, Misc 105 | scope 106 | keyword.operator, constant.other.color 107 | settings 108 | 109 | foreground 110 | #3E999F 111 | 112 | 113 | 114 | name 115 | Function, Special Method, Block Level 116 | scope 117 | entity.name.function, meta.function-call, support.function, keyword.other.special-method, meta.block-level 118 | settings 119 | 120 | fontStyle 121 | 122 | foreground 123 | #4271AE 124 | 125 | 126 | 127 | name 128 | Keyword, Storage 129 | scope 130 | keyword, storage, storage.type 131 | settings 132 | 133 | fontStyle 134 | 135 | foreground 136 | #8959A8 137 | 138 | 139 | 140 | name 141 | Invalid 142 | scope 143 | invalid 144 | settings 145 | 146 | background 147 | #C82829 148 | fontStyle 149 | 150 | foreground 151 | #FFFFFF 152 | 153 | 154 | 155 | name 156 | Separator 157 | scope 158 | meta.separator 159 | settings 160 | 161 | background 162 | #4271AE 163 | foreground 164 | #FFFFFF 165 | 166 | 167 | 168 | name 169 | Deprecated 170 | scope 171 | invalid.deprecated 172 | settings 173 | 174 | background 175 | #8959A8 176 | fontStyle 177 | 178 | foreground 179 | #FFFFFF 180 | 181 | 182 | 183 | name 184 | Diff foreground 185 | scope 186 | markup.inserted.diff, markup.deleted.diff, meta.diff.header.to-file, meta.diff.header.from-file 187 | settings 188 | 189 | foreground 190 | #FFFFFF 191 | 192 | 193 | 194 | name 195 | Diff insertion 196 | scope 197 | markup.inserted.diff, meta.diff.header.to-file 198 | settings 199 | 200 | background 201 | #718c00 202 | 203 | 204 | 205 | name 206 | Diff deletion 207 | scope 208 | markup.deleted.diff, meta.diff.header.from-file 209 | settings 210 | 211 | background 212 | #c82829 213 | 214 | 215 | 216 | name 217 | Diff header 218 | scope 219 | meta.diff.header.from-file, meta.diff.header.to-file 220 | settings 221 | 222 | foreground 223 | #FFFFFF 224 | background 225 | #4271ae 226 | 227 | 228 | 229 | name 230 | Diff range 231 | scope 232 | meta.diff.range 233 | settings 234 | 235 | fontStyle 236 | italic 237 | foreground 238 | #3e999f 239 | 240 | 241 | 242 | uuid 243 | 82CCD69C-F1B1-4529-B39E-780F91F07604 244 | 245 | 246 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow_go.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | comment 10 | http://chriskempson.com 11 | name 12 | Tomorrow 13 | settings 14 | 15 | 16 | settings 17 | 18 | background 19 | #ffffff 20 | caret 21 | #AEAFAD 22 | foreground 23 | #4D4D4C 24 | invisibles 25 | #D1D1D1 26 | lineHighlight 27 | #EFEFEF 28 | selection 29 | #D6D6D6 30 | 31 | 32 | 33 | name 34 | Comment 35 | scope 36 | comment, string.quoted.double.block.python 37 | settings 38 | 39 | foreground 40 | #999999 41 | 42 | 43 | 44 | name 45 | Foreground 46 | scope 47 | keyword.operator.class, constant.other, source.php.embedded.line 48 | settings 49 | 50 | fontStyle 51 | 52 | foreground 53 | #666969 54 | 55 | 56 | 57 | name 58 | Variable, String Link, Regular Expression, Tag Name 59 | scope 60 | variable, support.other.variable, string.other.link, string.regexp, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 61 | settings 62 | 63 | foreground 64 | #C82829 65 | 66 | 67 | 68 | name 69 | Number, Constant, Function Argument, Tag Attribute, Embedded 70 | scope 71 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 72 | settings 73 | 74 | fontStyle 75 | 76 | foreground 77 | #F5871F 78 | 79 | 80 | 81 | name 82 | Class, Support 83 | scope 84 | entity.name.class, entity.name.type.class, support.type, support.class 85 | settings 86 | 87 | fontStyle 88 | 89 | foreground 90 | #C99E00 91 | 92 | 93 | 94 | name 95 | String, Symbols, Inherited Class, Markup Heading 96 | scope 97 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 98 | settings 99 | 100 | fontStyle 101 | 102 | foreground 103 | #84b584 104 | 105 | 106 | 107 | name 108 | Operator, Misc 109 | scope 110 | keyword.operator, constant.other.color 111 | settings 112 | 113 | foreground 114 | #3E999F 115 | fontStyle 116 | bold 117 | 118 | 119 | 120 | name 121 | Function, Special Method, Block Level 122 | scope 123 | entity.name.function, meta.function-call, support.function, keyword.other.special-method, meta.block-level 124 | settings 125 | 126 | foreground 127 | #4a7dbf 128 | 129 | 130 | 131 | name 132 | Keyword, Storage 133 | scope 134 | keyword, storage, storage.type 135 | settings 136 | 137 | fontStyle 138 | 139 | foreground 140 | #8959A8 141 | 142 | 143 | 144 | name 145 | Invalid 146 | scope 147 | invalid 148 | settings 149 | 150 | background 151 | #C82829 152 | fontStyle 153 | 154 | foreground 155 | #FFFFFF 156 | 157 | 158 | 159 | name 160 | Separator 161 | scope 162 | meta.separator 163 | settings 164 | 165 | background 166 | #4271AE 167 | foreground 168 | #FFFFFF 169 | 170 | 171 | 172 | name 173 | Deprecated 174 | scope 175 | invalid.deprecated 176 | settings 177 | 178 | background 179 | #8959A8 180 | fontStyle 181 | 182 | foreground 183 | #FFFFFF 184 | 185 | 186 | 187 | name 188 | Diff foreground 189 | scope 190 | markup.inserted.diff, markup.deleted.diff, meta.diff.header.to-file, meta.diff.header.from-file 191 | settings 192 | 193 | foreground 194 | #FFFFFF 195 | 196 | 197 | 198 | name 199 | Diff insertion 200 | scope 201 | markup.inserted.diff, meta.diff.header.to-file 202 | settings 203 | 204 | background 205 | #718c00 206 | 207 | 208 | 209 | name 210 | Diff deletion 211 | scope 212 | markup.deleted.diff, meta.diff.header.from-file 213 | settings 214 | 215 | background 216 | #c82829 217 | 218 | 219 | 220 | name 221 | Diff header 222 | scope 223 | meta.diff.header.from-file, meta.diff.header.to-file 224 | settings 225 | 226 | foreground 227 | #FFFFFF 228 | background 229 | #416faa 230 | 231 | 232 | 233 | name 234 | Diff range 235 | scope 236 | meta.diff.range 237 | settings 238 | 239 | fontStyle 240 | italic 241 | foreground 242 | #3e999f 243 | 244 | 245 | 246 | uuid 247 | 82CCD69C-F1B1-4529-B39E-780F91F07604 248 | colorSpaceName 249 | sRGB 250 | semanticClass 251 | theme.light.tomorrow 252 | 253 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow_dark_go.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | comment 10 | http://chriskempson.com 11 | name 12 | Tomorrow 13 | settings 14 | 15 | 16 | settings 17 | 18 | background 19 | #1c1c1c 20 | caret 21 | #a7a7a6 22 | foreground 23 | #e0e0de 24 | invisibles 25 | #D1D1D1 26 | lineHighlight 27 | #EFEFEF 28 | selection 29 | #D6D6D6 30 | 31 | 32 | 33 | name 34 | Comment 35 | scope 36 | comment, string.quoted.double.block.python 37 | settings 38 | 39 | foreground 40 | #999999 41 | 42 | 43 | 44 | name 45 | Foreground 46 | scope 47 | keyword.operator.class, constant.other, source.php.embedded.line 48 | settings 49 | 50 | fontStyle 51 | 52 | foreground 53 | #fd4384 54 | 55 | 56 | 57 | name 58 | Variable, String Link, Regular Expression, Tag Name 59 | scope 60 | variable, support.other.variable, string.other.link, string.regexp, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 61 | settings 62 | 63 | foreground 64 | #C82829 65 | 66 | 67 | 68 | name 69 | Number, Constant, Function Argument, Tag Attribute, Embedded 70 | scope 71 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 72 | settings 73 | 74 | fontStyle 75 | 76 | foreground 77 | #e17b1b 78 | 79 | 80 | 81 | name 82 | Class, Support 83 | scope 84 | entity.name.class, entity.name.type.class, support.type, support.class 85 | settings 86 | 87 | fontStyle 88 | 89 | foreground 90 | #e2c344 91 | 92 | 93 | 94 | name 95 | String, Symbols, Inherited Class, Markup Heading 96 | scope 97 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 98 | settings 99 | 100 | fontStyle 101 | 102 | foreground 103 | #99d299 104 | 105 | 106 | 107 | name 108 | Operator, Misc 109 | scope 110 | keyword.operator, constant.other.color 111 | settings 112 | 113 | foreground 114 | #50c4cc 115 | fontStyle 116 | bold 117 | 118 | 119 | 120 | name 121 | Function, Special Method, Block Level 122 | scope 123 | entity.name.function, meta.function-call, support.function, keyword.other.special-method, meta.block-level 124 | settings 125 | 126 | foreground 127 | #558ed8 128 | 129 | 130 | 131 | name 132 | Keyword, Storage 133 | scope 134 | keyword, storage, storage.type 135 | settings 136 | 137 | fontStyle 138 | 139 | foreground 140 | #8959A8 141 | 142 | 143 | 144 | name 145 | Invalid 146 | scope 147 | invalid 148 | settings 149 | 150 | background 151 | #C82829 152 | fontStyle 153 | 154 | foreground 155 | #FFFFFF 156 | 157 | 158 | 159 | name 160 | Separator 161 | scope 162 | meta.separator 163 | settings 164 | 165 | background 166 | #4271AE 167 | foreground 168 | #FFFFFF 169 | 170 | 171 | 172 | name 173 | Deprecated 174 | scope 175 | invalid.deprecated 176 | settings 177 | 178 | background 179 | #8959A8 180 | fontStyle 181 | 182 | foreground 183 | #FFFFFF 184 | 185 | 186 | 187 | name 188 | Diff foreground 189 | scope 190 | markup.inserted.diff, markup.deleted.diff, meta.diff.header.to-file, meta.diff.header.from-file 191 | settings 192 | 193 | foreground 194 | #FFFFFF 195 | 196 | 197 | 198 | name 199 | Diff insertion 200 | scope 201 | markup.inserted.diff, meta.diff.header.to-file 202 | settings 203 | 204 | background 205 | #718c00 206 | 207 | 208 | 209 | name 210 | Diff deletion 211 | scope 212 | markup.deleted.diff, meta.diff.header.from-file 213 | settings 214 | 215 | background 216 | #c82829 217 | 218 | 219 | 220 | name 221 | Diff header 222 | scope 223 | meta.diff.header.from-file, meta.diff.header.to-file 224 | settings 225 | 226 | foreground 227 | #FFFFFF 228 | background 229 | #416faa 230 | 231 | 232 | 233 | name 234 | Diff range 235 | scope 236 | meta.diff.range 237 | settings 238 | 239 | fontStyle 240 | italic 241 | foreground 242 | #3e999f 243 | 244 | 245 | 246 | uuid 247 | 82CCD69C-F1B1-4529-B39E-780F91F07604 248 | colorSpaceName 249 | sRGB 250 | semanticClass 251 | theme.light.tomorrow 252 | 253 | -------------------------------------------------------------------------------- /sublime/color_schemes/Other/Aurora.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | gutterSettings 6 | 7 | background 8 | #000000 9 | divider 10 | #75715E 11 | foreground 12 | #75715E 13 | 14 | name 15 | Aurora 16 | semanticClass 17 | theme.dark.heroku 18 | settings 19 | 20 | 21 | settings 22 | 23 | background 24 | #000000 25 | caret 26 | #ffffff 27 | foreground 28 | #ececec 29 | invisibles 30 | #383838 31 | lineHighlight 32 | #3f3d4d 33 | selection 34 | #4b4959 35 | 36 | 37 | 38 | name 39 | Comment 40 | scope 41 | comment 42 | settings 43 | 44 | foreground 45 | #696587 46 | 47 | 48 | 49 | name 50 | String 51 | scope 52 | string 53 | settings 54 | 55 | foreground 56 | #ffb700 57 | 58 | 59 | 60 | name 61 | Number 62 | scope 63 | constant.numeric 64 | settings 65 | 66 | foreground 67 | #3f89ff 68 | 69 | 70 | 71 | name 72 | Built-in constant 73 | scope 74 | constant.language 75 | settings 76 | 77 | foreground 78 | #3f89ff 79 | fontStyle 80 | italic 81 | 82 | 83 | 84 | name 85 | User-defined constant 86 | scope 87 | constant.character, constant.other 88 | settings 89 | 90 | foreground 91 | #3f89ff 92 | fontStyle 93 | 94 | 95 | 96 | 97 | name 98 | Variable 99 | scope 100 | variable 101 | settings 102 | 103 | fontStyle 104 | 105 | 106 | 107 | 108 | name 109 | Keyword 110 | scope 111 | keyword 112 | settings 113 | 114 | foreground 115 | #e12977 116 | 117 | 118 | 119 | name 120 | Storage 121 | scope 122 | storage 123 | settings 124 | 125 | fontStyle 126 | 127 | foreground 128 | #e12977 129 | 130 | 131 | 132 | name 133 | Storage type 134 | scope 135 | storage.type 136 | settings 137 | 138 | foreground 139 | #7877ff 140 | 141 | 142 | 143 | name 144 | Class name 145 | scope 146 | entity.name.class 147 | settings 148 | 149 | foreground 150 | #c5e400 151 | 152 | 153 | 154 | name 155 | Inherited class 156 | scope 157 | entity.other.inherited-class 158 | settings 159 | 160 | foreground 161 | #c5e400 162 | fontStyle 163 | italic 164 | 165 | 166 | 167 | name 168 | Function name 169 | scope 170 | entity.name.function 171 | settings 172 | 173 | foreground 174 | #c5e400 175 | 176 | 177 | 178 | name 179 | Function argument 180 | scope 181 | variable.parameter 182 | settings 183 | 184 | foreground 185 | #d9903b 186 | fontStyle 187 | italic 188 | 189 | 190 | 191 | name 192 | Tag name 193 | scope 194 | entity.name.tag 195 | settings 196 | 197 | fontStyle 198 | 199 | foreground 200 | #e12977 201 | 202 | 203 | 204 | name 205 | Tag attribute 206 | scope 207 | entity.other.attribute-name 208 | settings 209 | 210 | fontStyle 211 | 212 | foreground 213 | #c5e400 214 | 215 | 216 | 217 | name 218 | Library function 219 | scope 220 | support.function 221 | settings 222 | 223 | fontStyle 224 | 225 | foreground 226 | #7877ff 227 | 228 | 229 | 230 | name 231 | Library constant 232 | scope 233 | support.constant 234 | settings 235 | 236 | fontStyle 237 | italic 238 | foreground 239 | #7877ff 240 | 241 | 242 | 243 | name 244 | Library class/type 245 | scope 246 | support.type, support.class 247 | settings 248 | 249 | fontStyle 250 | italic 251 | foreground 252 | #7877ff 253 | 254 | 255 | 256 | name 257 | Library variable 258 | scope 259 | support.other.variable 260 | settings 261 | 262 | fontStyle 263 | 264 | 265 | 266 | 267 | name 268 | Invalid 269 | scope 270 | invalid 271 | settings 272 | 273 | background 274 | #c5e400 275 | fontStyle 276 | 277 | foreground 278 | #e12977 279 | 280 | 281 | 282 | name 283 | Invalid deprecated 284 | scope 285 | invalid.deprecated 286 | settings 287 | 288 | background 289 | #e12977 290 | foreground 291 | #ffff05 292 | 293 | 294 | 295 | uuid 296 | D8D5E82E-3D5B-46B5-B38E-8C841C21347D 297 | colorSpaceName 298 | sRGB 299 | author 300 | Palmer Oliveira 301 | comment 302 | https://github.com/expalmer/aurora-theme 303 | 304 | 305 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow-Night-Eighties.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | comment 6 | http://chriskempson.com 7 | name 8 | Tomorrow Night - Eighties 9 | settings 10 | 11 | 12 | settings 13 | 14 | background 15 | #2D2D2D 16 | caret 17 | #CCCCCC 18 | foreground 19 | #CCCCCC 20 | invisibles 21 | #6A6A6A 22 | lineHighlight 23 | #393939 24 | selection 25 | #515151 26 | 27 | 28 | 29 | name 30 | Comment 31 | scope 32 | comment, string.quoted.double.block.python 33 | settings 34 | 35 | foreground 36 | #999999 37 | 38 | 39 | 40 | name 41 | Foreground 42 | scope 43 | keyword.operator.class, constant.other, source.php.embedded.line 44 | settings 45 | 46 | fontStyle 47 | 48 | foreground 49 | #CCCCCC 50 | 51 | 52 | 53 | name 54 | Variable, String Link, Tag Name 55 | scope 56 | variable, support.other.variable, string.other.link, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 57 | settings 58 | 59 | foreground 60 | #F2777A 61 | 62 | 63 | 64 | name 65 | Number, Constant, Function Argument, Tag Attribute, Embedded 66 | scope 67 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 68 | settings 69 | 70 | fontStyle 71 | 72 | foreground 73 | #F99157 74 | 75 | 76 | 77 | name 78 | Class, Support 79 | scope 80 | entity.name.class, entity.name.type.class, support.type, support.class 81 | settings 82 | 83 | fontStyle 84 | 85 | foreground 86 | #FFCC66 87 | 88 | 89 | 90 | name 91 | String, Symbols, Inherited Class, Markup Heading 92 | scope 93 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 94 | settings 95 | 96 | fontStyle 97 | 98 | foreground 99 | #99CC99 100 | 101 | 102 | 103 | name 104 | Operator, Misc 105 | scope 106 | keyword.operator, constant.other.color 107 | settings 108 | 109 | foreground 110 | #66CCCC 111 | 112 | 113 | 114 | name 115 | Function, Special Method, Block Level 116 | scope 117 | entity.name.function, meta.function-call, support.function, keyword.other.special-method, meta.block-level 118 | settings 119 | 120 | fontStyle 121 | 122 | foreground 123 | #6699CC 124 | 125 | 126 | 127 | name 128 | Keyword, Storage 129 | scope 130 | keyword, storage, storage.type, entity.name.tag.css 131 | settings 132 | 133 | fontStyle 134 | 135 | foreground 136 | #CC99CC 137 | 138 | 139 | 140 | name 141 | Invalid 142 | scope 143 | invalid 144 | settings 145 | 146 | background 147 | #F2777A 148 | fontStyle 149 | 150 | foreground 151 | #CDCDCD 152 | 153 | 154 | 155 | name 156 | Separator 157 | scope 158 | meta.separator 159 | settings 160 | 161 | background 162 | #99CCCC 163 | foreground 164 | #CDCDCD 165 | 166 | 167 | 168 | name 169 | Deprecated 170 | scope 171 | invalid.deprecated 172 | settings 173 | 174 | background 175 | #CC99CC 176 | fontStyle 177 | 178 | foreground 179 | #CDCDCD 180 | 181 | 182 | 183 | name 184 | Diff foreground 185 | scope 186 | markup.inserted.diff, markup.deleted.diff, meta.diff.header.to-file, meta.diff.header.from-file 187 | settings 188 | 189 | foreground 190 | #FFFFFF 191 | 192 | 193 | 194 | name 195 | Diff insertion 196 | scope 197 | markup.inserted.diff, meta.diff.header.to-file 198 | settings 199 | 200 | foreground 201 | #718c00 202 | 203 | 204 | 205 | name 206 | Diff deletion 207 | scope 208 | markup.deleted.diff, meta.diff.header.from-file 209 | settings 210 | 211 | foreground 212 | #c82829 213 | 214 | 215 | 216 | name 217 | Diff header 218 | scope 219 | meta.diff.header.from-file, meta.diff.header.to-file 220 | settings 221 | 222 | foreground 223 | #FFFFFF 224 | background 225 | #4271ae 226 | 227 | 228 | 229 | name 230 | Diff range 231 | scope 232 | meta.diff.range 233 | settings 234 | 235 | fontStyle 236 | italic 237 | foreground 238 | #3e999f 239 | 240 | 241 | 242 | name 243 | diff.deleted 244 | scope 245 | markup.deleted 246 | settings 247 | 248 | foreground 249 | #F92672 250 | 251 | 252 | 253 | name 254 | diff.inserted 255 | scope 256 | markup.inserted 257 | settings 258 | 259 | foreground 260 | #A6E22E 261 | 262 | 263 | 264 | name 265 | diff.changed 266 | scope 267 | markup.changed 268 | settings 269 | 270 | foreground 271 | #967EFB 272 | 273 | 274 | 275 | uuid 276 | DE477E5B-BD4D-46B0-BF80-2EA32A2814D5 277 | 278 | 279 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow-Night.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | comment 6 | http://chriskempson.com 7 | name 8 | Tomorrow Night 9 | settings 10 | 11 | 12 | settings 13 | 14 | background 15 | #1D1F21 16 | caret 17 | #AEAFAD 18 | foreground 19 | #C5C8C6 20 | invisibles 21 | #4B4E55 22 | lineHighlight 23 | #282A2E 24 | selection 25 | #373B41 26 | 27 | 28 | 29 | name 30 | Comment 31 | scope 32 | comment, string.quoted.double.block.python 33 | settings 34 | 35 | foreground 36 | #999999 37 | 38 | 39 | 40 | name 41 | Foreground 42 | scope 43 | keyword.operator.class, constant.other, source.php.embedded.line 44 | settings 45 | 46 | fontStyle 47 | 48 | foreground 49 | #CED1CF 50 | 51 | 52 | 53 | name 54 | Variable, String Link, Regular Expression, Tag Name 55 | scope 56 | variable, support.other.variable, string.other.link, string.regexp, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 57 | settings 58 | 59 | foreground 60 | #CC6666 61 | 62 | 63 | 64 | name 65 | Number, Constant, Function Argument, Tag Attribute, Embedded 66 | scope 67 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 68 | settings 69 | 70 | fontStyle 71 | 72 | foreground 73 | #DE935F 74 | 75 | 76 | 77 | name 78 | Class, Support 79 | scope 80 | entity.name.class, entity.name.type.class, support.type, support.class 81 | settings 82 | 83 | fontStyle 84 | 85 | foreground 86 | #F0C674 87 | 88 | 89 | 90 | name 91 | String, Symbols, Inherited Class, Markup Heading 92 | scope 93 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 94 | settings 95 | 96 | fontStyle 97 | 98 | foreground 99 | #B5BD68 100 | 101 | 102 | 103 | name 104 | Operator, Misc 105 | scope 106 | keyword.operator, constant.other.color 107 | settings 108 | 109 | foreground 110 | #8ABEB7 111 | 112 | 113 | 114 | name 115 | Function, Special Method, Block Level 116 | scope 117 | entity.name.function, meta.function-call, support.function, keyword.other.special-method, meta.block-level 118 | settings 119 | 120 | fontStyle 121 | 122 | foreground 123 | #81A2BE 124 | 125 | 126 | 127 | name 128 | Keyword, Storage 129 | scope 130 | keyword, storage, storage.type, entity.name.tag.css 131 | settings 132 | 133 | fontStyle 134 | 135 | foreground 136 | #B294BB 137 | 138 | 139 | 140 | name 141 | Invalid 142 | scope 143 | invalid 144 | settings 145 | 146 | background 147 | #DF5F5F 148 | fontStyle 149 | 150 | foreground 151 | #CED2CF 152 | 153 | 154 | 155 | name 156 | Separator 157 | scope 158 | meta.separator 159 | settings 160 | 161 | background 162 | #82A3BF 163 | foreground 164 | #CED2CF 165 | 166 | 167 | 168 | name 169 | Deprecated 170 | scope 171 | invalid.deprecated 172 | settings 173 | 174 | background 175 | #B798BF 176 | fontStyle 177 | 178 | foreground 179 | #CED2CF 180 | 181 | 182 | 183 | name 184 | Diff foreground 185 | scope 186 | markup.inserted.diff, markup.deleted.diff, meta.diff.header.to-file, meta.diff.header.from-file 187 | settings 188 | 189 | foreground 190 | #FFFFFF 191 | 192 | 193 | 194 | name 195 | Diff insertion 196 | scope 197 | markup.inserted.diff, meta.diff.header.to-file 198 | settings 199 | 200 | foreground 201 | #718c00 202 | 203 | 204 | 205 | name 206 | Diff deletion 207 | scope 208 | markup.deleted.diff, meta.diff.header.from-file 209 | settings 210 | 211 | foreground 212 | #c82829 213 | 214 | 215 | 216 | name 217 | Diff header 218 | scope 219 | meta.diff.header.from-file, meta.diff.header.to-file 220 | settings 221 | 222 | foreground 223 | #FFFFFF 224 | background 225 | #4271ae 226 | 227 | 228 | 229 | name 230 | Diff range 231 | scope 232 | meta.diff.range 233 | settings 234 | 235 | fontStyle 236 | italic 237 | foreground 238 | #3e999f 239 | 240 | 241 | 242 | name 243 | diff.deleted 244 | scope 245 | markup.deleted 246 | settings 247 | 248 | foreground 249 | #F92672 250 | 251 | 252 | 253 | name 254 | diff.inserted 255 | scope 256 | markup.inserted 257 | settings 258 | 259 | foreground 260 | #A6E22E 261 | 262 | 263 | 264 | name 265 | diff.changed 266 | scope 267 | markup.changed 268 | settings 269 | 270 | foreground 271 | #967EFB 272 | 273 | 274 | 275 | uuid 276 | F96223EB-1A60-4617-92F3-D24D4F13DB09 277 | 278 | 279 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow-Night-Bright.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | comment 6 | http://chriskempson.com 7 | name 8 | Tomorrow Night - Bright 9 | settings 10 | 11 | 12 | settings 13 | 14 | background 15 | #000000 16 | caret 17 | #9F9F9F 18 | foreground 19 | #DEDEDE 20 | invisibles 21 | #343434 22 | lineHighlight 23 | #2A2A2A 24 | selection 25 | #424242 26 | 27 | 28 | 29 | name 30 | Comment 31 | scope 32 | comment, string.quoted.double.block.python 33 | settings 34 | 35 | foreground 36 | #999999 37 | 38 | 39 | 40 | name 41 | Foreground 42 | scope 43 | keyword.operator.class, constant.other, source.php.embedded.line 44 | settings 45 | 46 | fontStyle 47 | 48 | foreground 49 | #EEEEEE 50 | 51 | 52 | 53 | name 54 | Variable, String Link, Regular Expression, Tag Name 55 | scope 56 | variable, support.other.variable, string.other.link, string.regexp, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 57 | settings 58 | 59 | foreground 60 | #D54E53 61 | 62 | 63 | 64 | name 65 | Number, Constant, Function Argument, Tag Attribute, Embedded 66 | scope 67 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 68 | settings 69 | 70 | fontStyle 71 | 72 | foreground 73 | #E78C45 74 | 75 | 76 | 77 | name 78 | Class, Support 79 | scope 80 | entity.name.class, entity.name.type.class, support.type, support.class 81 | settings 82 | 83 | fontStyle 84 | 85 | foreground 86 | #E7C547 87 | 88 | 89 | 90 | name 91 | String, Symbols, Inherited Class, Markup Heading 92 | scope 93 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 94 | settings 95 | 96 | fontStyle 97 | 98 | foreground 99 | #B9CA4A 100 | 101 | 102 | 103 | name 104 | Operator, Misc 105 | scope 106 | keyword.operator, constant.other.color 107 | settings 108 | 109 | foreground 110 | #70C0B1 111 | 112 | 113 | 114 | name 115 | Function, Special Method, Block Level 116 | scope 117 | entity.name.function, meta.function-call, support.function, keyword.other.special-method, meta.block-level 118 | settings 119 | 120 | fontStyle 121 | 122 | foreground 123 | #7AA6DA 124 | 125 | 126 | 127 | name 128 | Keyword, Storage 129 | scope 130 | keyword, storage, storage.type, entity.name.tag.css 131 | settings 132 | 133 | fontStyle 134 | 135 | foreground 136 | #C397D8 137 | 138 | 139 | 140 | name 141 | Invalid 142 | scope 143 | invalid 144 | settings 145 | 146 | background 147 | #DF5F5F 148 | fontStyle 149 | 150 | foreground 151 | #CED2CF 152 | 153 | 154 | 155 | name 156 | Separator 157 | scope 158 | meta.separator 159 | settings 160 | 161 | background 162 | #82A3BF 163 | foreground 164 | #CED2CF 165 | 166 | 167 | 168 | name 169 | Deprecated 170 | scope 171 | invalid.deprecated 172 | settings 173 | 174 | background 175 | #B798BF 176 | fontStyle 177 | 178 | foreground 179 | #CED2CF 180 | 181 | 182 | 183 | name 184 | Diff foreground 185 | scope 186 | markup.inserted.diff, markup.deleted.diff, meta.diff.header.to-file, meta.diff.header.from-file 187 | settings 188 | 189 | foreground 190 | #FFFFFF 191 | 192 | 193 | 194 | name 195 | Diff insertion 196 | scope 197 | markup.inserted.diff, meta.diff.header.to-file 198 | settings 199 | 200 | foreground 201 | #718c00 202 | 203 | 204 | 205 | name 206 | Diff deletion 207 | scope 208 | markup.deleted.diff, meta.diff.header.from-file 209 | settings 210 | 211 | foreground 212 | #c82829 213 | 214 | 215 | 216 | name 217 | Diff header 218 | scope 219 | meta.diff.header.from-file, meta.diff.header.to-file 220 | settings 221 | 222 | foreground 223 | #FFFFFF 224 | background 225 | #4271ae 226 | 227 | 228 | 229 | name 230 | Diff range 231 | scope 232 | meta.diff.range 233 | settings 234 | 235 | fontStyle 236 | italic 237 | foreground 238 | #3e999f 239 | 240 | 241 | 242 | name 243 | diff.deleted 244 | scope 245 | markup.deleted 246 | settings 247 | 248 | foreground 249 | #F92672 250 | 251 | 252 | 253 | name 254 | diff.inserted 255 | scope 256 | markup.inserted 257 | settings 258 | 259 | foreground 260 | #A6E22E 261 | 262 | 263 | 264 | name 265 | diff.changed 266 | scope 267 | markup.changed 268 | settings 269 | 270 | foreground 271 | #967EFB 272 | 273 | 274 | 275 | uuid 276 | 33D8C715-AD3A-455B-8DF2-56F708909FFE 277 | 278 | 279 | -------------------------------------------------------------------------------- /sublime/color_schemes/Tomorrow_themes/Tomorrow-Night-Blue.tmTheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | comment 6 | http://chriskempson.com 7 | name 8 | Tomorrow Night - Blue 9 | settings 10 | 11 | 12 | settings 13 | 14 | background 15 | #002451 16 | caret 17 | #FFFFFF 18 | foreground 19 | #FFFFFF 20 | invisibles 21 | #404F7D 22 | lineHighlight 23 | #00346E 24 | selection 25 | #003F8E 26 | 27 | 28 | 29 | name 30 | Comment 31 | scope 32 | comment, string.quoted.double.block.python 33 | settings 34 | 35 | foreground 36 | #999999 37 | 38 | 39 | 40 | name 41 | Foreground, Operator 42 | scope 43 | keyword.operator.class, keyword.operator, constant.other, source.php.embedded.line 44 | settings 45 | 46 | fontStyle 47 | 48 | foreground 49 | #FFFFFF 50 | 51 | 52 | 53 | name 54 | Variable, String Link, Regular Expression, Tag Name 55 | scope 56 | variable, support.other.variable, string.other.link, string.regexp, entity.name.tag, entity.other.attribute-name, meta.tag, declaration.tag 57 | settings 58 | 59 | foreground 60 | #FF9DA4 61 | 62 | 63 | 64 | name 65 | Number, Constant, Function Argument, Tag Attribute, Embedded 66 | scope 67 | constant.numeric, constant.language, support.constant, constant.character, variable.parameter, punctuation.section.embedded, keyword.other.unit 68 | settings 69 | 70 | fontStyle 71 | 72 | foreground 73 | #FFC58F 74 | 75 | 76 | 77 | name 78 | Class, Support 79 | scope 80 | entity.name.class, entity.name.type.class, support.type, support.class 81 | settings 82 | 83 | fontStyle 84 | 85 | foreground 86 | #FFEEAD 87 | 88 | 89 | 90 | name 91 | String, Symbols, Inherited Class, Markup Heading 92 | scope 93 | string, constant.other.symbol, entity.other.inherited-class, markup.heading 94 | settings 95 | 96 | fontStyle 97 | 98 | foreground 99 | #D1F1A9 100 | 101 | 102 | 103 | name 104 | Operator, Misc 105 | scope 106 | keyword.operator, constant.other.color 107 | settings 108 | 109 | foreground 110 | #99FFFF 111 | 112 | 113 | 114 | name 115 | Function, Special Method, Block Level 116 | scope 117 | entity.name.function, meta.function-call, support.function, keyword.other.special-method, meta.block-level 118 | settings 119 | 120 | fontStyle 121 | 122 | foreground 123 | #BBDAFF 124 | 125 | 126 | 127 | name 128 | Keyword, Storage 129 | scope 130 | keyword, storage, storage.type, entity.name.tag.css 131 | settings 132 | 133 | fontStyle 134 | 135 | foreground 136 | #EBBBFF 137 | 138 | 139 | 140 | name 141 | Invalid 142 | scope 143 | invalid 144 | settings 145 | 146 | background 147 | #F99DA5 148 | fontStyle 149 | 150 | foreground 151 | #FFFFFF 152 | 153 | 154 | 155 | name 156 | Separator 157 | scope 158 | meta.separator 159 | settings 160 | 161 | background 162 | #BBDAFE 163 | foreground 164 | #FFFFFF 165 | 166 | 167 | 168 | name 169 | Deprecated 170 | scope 171 | invalid.deprecated 172 | settings 173 | 174 | background 175 | #EBBBFF 176 | fontStyle 177 | 178 | foreground 179 | #FFFFFF 180 | 181 | 182 | 183 | name 184 | Diff foreground 185 | scope 186 | markup.inserted.diff, markup.deleted.diff, meta.diff.header.to-file, meta.diff.header.from-file 187 | settings 188 | 189 | foreground 190 | #FFFFFF 191 | 192 | 193 | 194 | name 195 | Diff insertion 196 | scope 197 | markup.inserted.diff, meta.diff.header.to-file 198 | settings 199 | 200 | foreground 201 | #718c00 202 | 203 | 204 | 205 | name 206 | Diff deletion 207 | scope 208 | markup.deleted.diff, meta.diff.header.from-file 209 | settings 210 | 211 | foreground 212 | #c82829 213 | 214 | 215 | 216 | name 217 | Diff header 218 | scope 219 | meta.diff.header.from-file, meta.diff.header.to-file 220 | settings 221 | 222 | foreground 223 | #FFFFFF 224 | background 225 | #4271ae 226 | 227 | 228 | 229 | name 230 | Diff range 231 | scope 232 | meta.diff.range 233 | settings 234 | 235 | fontStyle 236 | italic 237 | foreground 238 | #3e999f 239 | 240 | 241 | 242 | name 243 | diff.deleted 244 | scope 245 | markup.deleted 246 | settings 247 | 248 | foreground 249 | #F92672 250 | 251 | 252 | 253 | name 254 | diff.inserted 255 | scope 256 | markup.inserted 257 | settings 258 | 259 | foreground 260 | #A6E22E 261 | 262 | 263 | 264 | name 265 | diff.changed 266 | scope 267 | markup.changed 268 | settings 269 | 270 | foreground 271 | #967EFB 272 | 273 | 274 | 275 | uuid 276 | 3F4BB232-3C3A-4396-99C0-06A9573715E9 277 | 278 | 279 | --------------------------------------------------------------------------------