diff --git a/gram/settings.jsonc b/gram/settings.jsonc new file mode 100644 index 0000000..bf755f0 --- /dev/null +++ b/gram/settings.jsonc @@ -0,0 +1,291 @@ +// ╭────────────────────────────────╮ +// │- Gram editor settings -│ +// │- author: Daniel Heras Quesada -│ +// ╰────────────────────────────────╯ +{ + // ╭─────────╮ + // │ General │ + // ╰─────────╯ + "tasks": { + "prefer_lsp": true + }, + "icon_theme": "Gram (Default)", + "semantic_tokens": "combined", + "proxy": "", + "use_system_window_tabs": false, + "window_decorations": "client", + "status_bar": { + "active_encoding_button": "enabled", + "line_endings_button": true, + }, + "git_panel": { + "dock": "left", + }, + "base_keymap": "VSCode", + "restore_on_startup": "last_session", + // ╭─────────╮ + // │ Styling │ + // ╰─────────╯ + "theme": "Gruvbox Light Soft", + "unnecessary_code_fade": 0.2, + // ╭──────╮ + // │ Font │ + // ╰──────╯ + "ui_font_size": 13.0, + "ui_font_family": "JetBrainsMonoNL Nerd Font Mono", + "buffer_font_size": 14.0, + "buffer_font_family": "JetBrainsMono Nerd Font", + "buffer_font_weight": 400, + "buffer_line_height": "comfortable", + // ╭────────╮ + // │ Editor │ + // ╰────────╯ + "always_treat_brackets_as_autoclosed": false, + "autosave": "off", + "autoscroll_on_clicks": true, + "confirm_quit": false, + "current_line_highlight": "all", + "cursor_blink": true, + "cursor_shape": "bar", + "tab_size": 4, // May cause errors on colaborative projects wrongly configured + "git": { + "git_gutter": "tracked_files", + "inline_blame": { + "enabled": true, + "show_commit_summary": true, + }, + }, + "hard_tabs": true, + "hover_popover_enabled": false, + "hover_popover_delay": 0, + "indent_guides": { + "enabled": true, + "line_width": 1, + "active_line_width": 2, + "coloring": "fixed", + "background_coloring": "disabled", + }, + "inlay_hints": { + "enabled": false, + "show_type_hints": true, + "show_parameter_hints": true, + "show_other_hints": true, + "show_background": false, + "edit_debounce_ms": 700, + "scroll_debounce_ms": 50, + }, + "selection_highlight": true, + "show_wrap_guides": true, + "show_completions_on_input": true, + "show_whitespaces": "selection", + "wrap_guides": [80], + "relative_line_numbers": "enabled", + "scrollbar": { + "show": "auto", + "cursors": true, + "git_diff": true, + "search_results": true, + "selected_text": true, + "selected_symbol": true, + "diagnostics": "all", + "axes": { + "horizontal": false, + "vertical": true, + }, + }, + "vim_mode": true, + "soft_wrap": "editor_width", + // ╭────────╮ + // │ Layout │ + // ╰────────╯ + "centered_layout": { + "left_padding": 0.35, + "right_padding": 0.35, + }, + "diagnostics": { + "button": true, + "include_warnings": true, + "inline": { + "enabled": true, + "update_debounce_ms": 150, + "padding": 4, + "min_column": 0, + "max_severity": null, + }, + }, + "title_bar": { + "show_user_picture": false, + "show_onboarding_banner": false, + "show_menus": false, + "show_project_items": true, + "show_branch_name": true, + }, + "minimap": { + "show": "never", + "thumb": "always", + "thumb_border": "left_open", + "current_line_highlight": "all", + }, + "outline_panel": { + "button": true, + "default_width": 240, + "dock": "left", + "file_icons": true, + "folder_icons": true, + "git_status": true, + "indent_size": 20, + "auto_reveal_entries": true, + "auto_fold_dirs": true, + "indent_guides": { + "show": "never", + }, + "scrollbar": { + "show": null, + }, + }, + "preview_tabs": { + "enabled": false, + "enable_preview_from_file_finder": false, + "enable_keep_preview_on_code_navigation": false, + }, + "project_panel": { + "button": true, + "default_width": 240, + "dock": "left", + "entry_spacing": "comfortable", + "file_icons": true, + "folder_icons": true, + "git_status": true, + "indent_size": 20, + "auto_reveal_entries": true, + "auto_fold_dirs": true, + "scrollbar": { + "show": null, + }, + "indent_guides": { + "show": "never", + }, + }, + // "proxy": "http://127.0.0.1:10809", + "search": { + "whole_word": false, + "case_sensitive": false, + "include_ignored": false, + "button": true, + "regex": true, + }, + "tab_bar": { + "show": true, + "show_nav_history_buttons": false, + "show_tab_bar_buttons": true, + }, + "tabs": { + "show_diagnostics": "all", + "close_position": "right", + "file_icons": true, + "git_status": true, + "activate_on_close": "neighbour", + "show_close_button": "hover", + }, + "toolbar": { + "breadcrumbs": true, + "quick_actions": true, + }, + "terminal": { + "alternate_scroll": "off", + "blinking": "terminal_controlled", + "copy_on_select": false, + "dock": "bottom", + "detect_venv": { + "on": { + "directories": [".env", "env", ".venv", "venv"], + "activate_script": "default", + }, + }, + "env": { + "ZED": "1", + "EXAMPLE": "test:dqnid", + "BLUEPRINTS_PATHS": "./.blueprints" + }, + // "font_family": null, + "font_features": null, + "font_size": 14, + "line_height": "comfortable", + "option_as_meta": true, + "button": true, + "shell": "system", + "scrollbar": { + "show": "never", + }, + "working_directory": "current_project_directory", + }, + // ╭─────╮ + // │ LSP │ + // ╰─────╯ + "format_on_save": "on", + "formatter": "auto", + "ensure_final_newline_on_save": true, + "enable_language_server": true, + "use_autoclose": true, + "languages": { + "Astro": { + "tab_size": 4, + }, + "HTML": { + "tab_size": 2, + }, + "JSON": { + "tab_size": 4, + }, + "JavaScript": { + "formatter": "prettier", + "format_on_save": "on", + "tab_size": 2, + "preferred_line_length": 65, + "code_actions_on_format": { + "source.organizeImports": true, + }, + }, + "TypeScript": { + "formatter": "prettier", + "format_on_save": "on", + "preferred_line_length": 65, + "language_servers": ["typescript-language-server", "!vtsls"], + "code_actions_on_format": { + "source.organizeImports": true, + }, + }, + "TSX": { + "formatter": "prettier", + "format_on_save": "on", + "preferred_line_length": 85, + "language_servers": ["typescript-language-server", "!vtsls"], + // "formatter": { + // "external": { + // "command": "prettier", + // "arguments": ["--stdin-filepath", "{buffer_path}"] + // } + // }, + "code_actions_on_format": { + "source.organizeImports": true, + }, + }, + }, + "file_types": { + "C++": ["c"], + "TOML": ["MyLockFile"], + "Dockerfile": ["Dockerfile*"], + }, + "file_scan_exclusions": [ + "**/.git", + "**/.svn", + "**/.hg", + "**/.jj", + "**/CVS", + "**/.DS_Store", + "**/Thumbs.db", + "**/.classpath", + "**/.settings", + ], + "file_scan_inclusions": [".env*"], +} diff --git a/gram/snippets/html.json b/gram/snippets/html.json new file mode 100644 index 0000000..fa81832 --- /dev/null +++ b/gram/snippets/html.json @@ -0,0 +1,10 @@ +{ + "Print base": { + "prefix": "!html5", + "body": [ + "\n\n\t
\n\t\t\n\t\t