mirror of
https://github.com/atom/atom.git
synced 2026-04-28 03:01:47 -04:00
Merge remote-tracking branch 'origin/dev' into markers
This commit is contained in:
@@ -22,17 +22,36 @@ describe "Config", ->
|
||||
spyOn(fs, 'write')
|
||||
jasmine.unspy config, 'save'
|
||||
|
||||
it "writes any non-default properties to the config.json in the user's .atom directory", ->
|
||||
config.set("a.b.c", 1)
|
||||
config.set("a.b.d", 2)
|
||||
config.set("x.y.z", 3)
|
||||
config.setDefaults("a.b", e: 4, f: 5)
|
||||
describe "when ~/.atom/config.json exists", ->
|
||||
it "writes any non-default properties to ~/.atom/config.json", ->
|
||||
config.configFilePath = fs.join(config.configDirPath, "config.json")
|
||||
config.set("a.b.c", 1)
|
||||
config.set("a.b.d", 2)
|
||||
config.set("x.y.z", 3)
|
||||
config.setDefaults("a.b", e: 4, f: 5)
|
||||
|
||||
fs.write.reset()
|
||||
config.save()
|
||||
fs.write.reset()
|
||||
config.save()
|
||||
|
||||
writtenConfig = JSON.parse(fs.write.argsForCall[0][1])
|
||||
expect(writtenConfig).toEqual config.settings
|
||||
expect(fs.write.argsForCall[0][0]).toBe(fs.join(config.configDirPath, "config.json"))
|
||||
writtenConfig = JSON.parse(fs.write.argsForCall[0][1])
|
||||
expect(writtenConfig).toEqual config.settings
|
||||
|
||||
describe "when ~/.atom/config.json doesn't exist", ->
|
||||
it "writes any non-default properties to ~/.atom/config.cson", ->
|
||||
config.configFilePath = fs.join(config.configDirPath, "config.cson")
|
||||
config.set("a.b.c", 1)
|
||||
config.set("a.b.d", 2)
|
||||
config.set("x.y.z", 3)
|
||||
config.setDefaults("a.b", e: 4, f: 5)
|
||||
|
||||
fs.write.reset()
|
||||
config.save()
|
||||
|
||||
expect(fs.write.argsForCall[0][0]).toBe(fs.join(config.configDirPath, "config.cson"))
|
||||
{CoffeeScript} = require 'coffee-script'
|
||||
writtenConfig = CoffeeScript.eval(fs.write.argsForCall[0][1], bare: true)
|
||||
expect(writtenConfig).toEqual config.settings
|
||||
|
||||
describe ".setDefaults(keyPath, defaults)", ->
|
||||
it "assigns any previously-unassigned keys to the object at the key path", ->
|
||||
|
||||
@@ -605,7 +605,7 @@ describe "Editor", ->
|
||||
rootView.attachToDom()
|
||||
config.set("editor.fontSize", 16 * 4)
|
||||
expect(editor.gutter.css('font-size')).toBe "#{16 * 4}px"
|
||||
expect(editor.gutter.width()).toBe(64)
|
||||
expect(editor.gutter.width()).toBe(64 + editor.gutter.calculateLineNumberPadding())
|
||||
|
||||
it "updates lines if there are unrendered lines", ->
|
||||
editor.attachToDom(heightInLines: 5)
|
||||
|
||||
@@ -17,8 +17,8 @@ describe "Window", ->
|
||||
it "has .is-focused on the body tag", ->
|
||||
expect($("body").hasClass("is-focused")).toBe true
|
||||
|
||||
it "doesn't have .is-focused on the window focousout event", ->
|
||||
$(window).focusout()
|
||||
it "doesn't have .is-focused on the window blur event", ->
|
||||
$(window).blur()
|
||||
expect($("body").hasClass("is-focused")).toBe false
|
||||
|
||||
describe ".close()", ->
|
||||
|
||||
4
spec/fixtures/jquery-task-handler.coffee
vendored
Normal file
4
spec/fixtures/jquery-task-handler.coffee
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
module.exports =
|
||||
load: ->
|
||||
$ = require 'jquery'
|
||||
callTaskMethod('loaded', $?)
|
||||
@@ -18,10 +18,6 @@ describe "CSON", ->
|
||||
it "does not include the key in the formatted CSON", ->
|
||||
expect(CSON.stringify(b: 1, c: undefined)).toBe "'b': 1"
|
||||
|
||||
describe "when formatting an empty object", ->
|
||||
it "returns the empty string", ->
|
||||
expect(CSON.stringify({})).toBe ""
|
||||
|
||||
describe "when formatting a string", ->
|
||||
it "returns formatted CSON", ->
|
||||
expect(CSON.stringify(a: 'b')).toBe "'a': 'b'"
|
||||
@@ -32,18 +28,25 @@ describe "CSON", ->
|
||||
it "doesn't escape double quotes", ->
|
||||
expect(CSON.stringify(a: '"b"')).toBe "'a': '\"b\"'"
|
||||
|
||||
it "escapes newlines", ->
|
||||
expect(CSON.stringify("a\nb")).toBe "'a\\nb'"
|
||||
|
||||
describe "when formatting a boolean", ->
|
||||
it "returns formatted CSON", ->
|
||||
expect(CSON.stringify(true)).toBe 'true'
|
||||
expect(CSON.stringify(false)).toBe 'false'
|
||||
expect(CSON.stringify(a: true)).toBe "'a': true"
|
||||
expect(CSON.stringify(a: false)).toBe "'a': false"
|
||||
|
||||
describe "when formatting a number", ->
|
||||
it "returns formatted CSON", ->
|
||||
expect(CSON.stringify(54321.012345)).toBe '54321.012345'
|
||||
expect(CSON.stringify(a: 14)).toBe "'a': 14"
|
||||
expect(CSON.stringify(a: 1.23)).toBe "'a': 1.23"
|
||||
|
||||
describe "when formatting null", ->
|
||||
it "returns formatted CSON", ->
|
||||
expect(CSON.stringify(null)).toBe 'null'
|
||||
expect(CSON.stringify(a: null)).toBe "'a': null"
|
||||
|
||||
describe "when formatting an array", ->
|
||||
@@ -55,6 +58,29 @@ describe "CSON", ->
|
||||
expect(CSON.stringify(a: ['b'])).toBe "'a': [\n 'b'\n]"
|
||||
expect(CSON.stringify(a: ['b', 4])).toBe "'a': [\n 'b'\n 4\n]"
|
||||
|
||||
describe "when the array has an undefined value", ->
|
||||
it "formats the undefined value as null", ->
|
||||
expect(CSON.stringify(['a', undefined, 'b'])).toBe "[\n 'a'\n null\n 'b'\n]"
|
||||
|
||||
describe "when formatting an object", ->
|
||||
describe "when the object is empty", ->
|
||||
it "returns the empty string", ->
|
||||
expect(CSON.stringify({})).toBe ""
|
||||
|
||||
it "returns formatted CSON", ->
|
||||
expect(CSON.stringify(a: {b: 'c'})).toBe "'a':\n 'b': 'c'"
|
||||
|
||||
describe "when converting back to an object", ->
|
||||
it "produces the original object", ->
|
||||
object =
|
||||
showInvisibles: true
|
||||
fontSize: 20
|
||||
core:
|
||||
themes: ['a', 'b']
|
||||
stripTrailingWhitespace:
|
||||
singleTrailingNewline: true
|
||||
|
||||
cson = CSON.stringify(object)
|
||||
{CoffeeScript} = require 'coffee-script'
|
||||
evaledObject = CoffeeScript.eval(cson, bare: true)
|
||||
expect(evaledObject).toEqual object
|
||||
|
||||
23
spec/stdlib/task-shell-spec.coffee
Normal file
23
spec/stdlib/task-shell-spec.coffee
Normal file
@@ -0,0 +1,23 @@
|
||||
Task = require 'task'
|
||||
|
||||
describe "Task shell", ->
|
||||
describe "populating the window with fake properties", ->
|
||||
describe "when jQuery is loaded in a web worker", ->
|
||||
it "doesn't log to the console", ->
|
||||
spyOn(console, 'log')
|
||||
spyOn(console, 'error')
|
||||
spyOn(console, 'warn')
|
||||
class JQueryTask extends Task
|
||||
constructor: -> super('fixtures/jquery-task-handler.coffee')
|
||||
started: -> @callWorkerMethod('load')
|
||||
loaded: (@jqueryLoaded) ->
|
||||
|
||||
task = new JQueryTask()
|
||||
task.start()
|
||||
waitsFor "web worker to start and jquery to be required", 5000, ->
|
||||
task.jqueryLoaded
|
||||
runs ->
|
||||
expect(task.jqueryLoaded).toBeTruthy()
|
||||
expect(console.log).not.toHaveBeenCalled()
|
||||
expect(console.error).not.toHaveBeenCalled()
|
||||
expect(console.warn).not.toHaveBeenCalled()
|
||||
@@ -3,7 +3,6 @@ _ = require 'underscore'
|
||||
EventEmitter = require 'event-emitter'
|
||||
|
||||
configDirPath = fs.absolute("~/.atom")
|
||||
configJsonPath = fs.join(configDirPath, "config.json")
|
||||
userInitScriptPath = fs.join(configDirPath, "user.coffee")
|
||||
bundledPackagesDirPath = fs.join(resourcePath, "src/packages")
|
||||
bundledThemesDirPath = fs.join(resourcePath, "themes")
|
||||
@@ -27,6 +26,8 @@ class Config
|
||||
core: _.clone(require('root-view').configDefaults)
|
||||
editor: _.clone(require('editor').configDefaults)
|
||||
@settings = {}
|
||||
@configFilePath = fs.resolve(configDirPath, 'config', ['json', 'cson'])
|
||||
@configFilePath ?= fs.join(configDirPath, 'config.cson')
|
||||
|
||||
load: ->
|
||||
@loadUserConfig()
|
||||
@@ -35,8 +36,8 @@ class Config
|
||||
atom.loadPackages()
|
||||
|
||||
loadUserConfig: ->
|
||||
if fs.exists(configJsonPath)
|
||||
userConfig = JSON.parse(fs.read(configJsonPath))
|
||||
if fs.exists(@configFilePath)
|
||||
userConfig = fs.readObject(@configFilePath)
|
||||
_.extend(@settings, userConfig)
|
||||
|
||||
get: (keyPath) ->
|
||||
@@ -77,7 +78,7 @@ class Config
|
||||
@trigger 'updated'
|
||||
|
||||
save: ->
|
||||
fs.write(configJsonPath, JSON.stringify(@settings, undefined, 2) + "\n")
|
||||
fs.writeObject(@configFilePath, @settings)
|
||||
|
||||
requireUserInitScript: ->
|
||||
try
|
||||
|
||||
@@ -4,7 +4,7 @@ SelectList = require 'select-list'
|
||||
module.exports =
|
||||
class GrammarView extends SelectList
|
||||
|
||||
@viewClass: -> "#{super} grammar-view"
|
||||
@viewClass: -> "#{super} grammar-view from-top overlay"
|
||||
|
||||
filterKey: 'name'
|
||||
|
||||
@@ -12,7 +12,6 @@ class GrammarView extends SelectList
|
||||
@currentGrammar = @editor.getGrammar()
|
||||
@path = @editor.getPath()
|
||||
@autoDetect = name: 'Auto Detect'
|
||||
requireStylesheet 'grammar-view.css'
|
||||
@command 'editor:select-grammar', =>
|
||||
@cancel()
|
||||
false
|
||||
|
||||
@@ -109,7 +109,7 @@ class SelectList extends View
|
||||
scrollToItem: (item) ->
|
||||
scrollTop = @list.scrollTop()
|
||||
desiredTop = item.position().top + scrollTop
|
||||
desiredBottom = desiredTop + item.height()
|
||||
desiredBottom = desiredTop + item.outerHeight()
|
||||
|
||||
if desiredTop < scrollTop
|
||||
@list.scrollTop(desiredTop)
|
||||
|
||||
@@ -29,7 +29,7 @@ windowAdditions =
|
||||
$(window).on 'core:close', => @close()
|
||||
$(window).command 'window:close', => @close()
|
||||
$(window).on 'focus', => $("body").addClass("is-focused")
|
||||
$(window).on 'focusout', => $("body").removeClass("is-focused")
|
||||
$(window).on 'blur', => $("body").removeClass("is-focused")
|
||||
|
||||
# This method is intended only to be run when starting a normal application
|
||||
# Note: RootView assigns itself on window on initialization so that
|
||||
@@ -114,6 +114,14 @@ window.startup()
|
||||
|
||||
requireStylesheet 'reset.css'
|
||||
requireStylesheet 'atom.css'
|
||||
requireStylesheet 'tabs.css'
|
||||
requireStylesheet 'tree-view.css'
|
||||
requireStylesheet 'status-bar.css'
|
||||
requireStylesheet 'command-panel.css'
|
||||
requireStylesheet 'fuzzy-finder.css'
|
||||
requireStylesheet 'overlay.css'
|
||||
requireStylesheet 'popover-list.css'
|
||||
requireStylesheet 'notification.css'
|
||||
|
||||
if nativeStylesheetPath = require.resolve("#{platform}.css")
|
||||
requireStylesheet(nativeStylesheetPath)
|
||||
|
||||
@@ -8,7 +8,7 @@ class AutocompleteView extends SelectList
|
||||
rootView.eachEditor (editor) ->
|
||||
new AutocompleteView(editor) if editor.attached and not editor.mini
|
||||
|
||||
@viewClass: -> "autocomplete #{super}"
|
||||
@viewClass: -> "autocomplete #{super} popover-list"
|
||||
|
||||
editor: null
|
||||
currentBuffer: null
|
||||
@@ -106,7 +106,6 @@ class AutocompleteView extends SelectList
|
||||
|
||||
setPosition: ->
|
||||
{ left, top } = @editor.pixelPositionForScreenPosition(@originalCursorPosition)
|
||||
|
||||
height = @outerHeight()
|
||||
potentialTop = top + @editor.lineHeight
|
||||
potentialBottom = potentialTop - @editor.scrollTop() + height
|
||||
|
||||
@@ -23,8 +23,8 @@ describe "CommandPalette", ->
|
||||
eventLi = palette.list.children("[data-event-name='#{eventName}']")
|
||||
if description
|
||||
expect(eventLi).toExist()
|
||||
expect(eventLi.find('.event-name')).toHaveText(eventName)
|
||||
expect(eventLi.find('.event-description')).toHaveText(description)
|
||||
expect(eventLi.find('.label')).toHaveText(description)
|
||||
expect(eventLi.find('.label').attr('title')).toBe(eventName)
|
||||
for binding in keyBindings[eventName] ? []
|
||||
expect(eventLi.find(".key-binding:contains(#{binding})")).toExist()
|
||||
else
|
||||
@@ -39,8 +39,8 @@ describe "CommandPalette", ->
|
||||
description = editorEvents[eventName] unless description
|
||||
if description
|
||||
expect(eventLi).toExist()
|
||||
expect(eventLi.find('.event-name')).toHaveText(eventName)
|
||||
expect(eventLi.find('.event-description')).toHaveText(description)
|
||||
expect(eventLi.find('.label')).toHaveText(description)
|
||||
expect(eventLi.find('.label').attr('title')).toBe(eventName)
|
||||
else
|
||||
expect(eventLi).not.toExist()
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ class CommandPaletteView extends SelectList
|
||||
@instance = new CommandPaletteView(rootView)
|
||||
|
||||
@viewClass: ->
|
||||
"#{super} command-palette"
|
||||
"#{super} command-palette overlay from-top"
|
||||
|
||||
filterKey: 'eventDescription'
|
||||
|
||||
@@ -41,12 +41,10 @@ class CommandPaletteView extends SelectList
|
||||
keyBindings = @keyBindings
|
||||
$$ ->
|
||||
@li class: 'event', 'data-event-name': eventName, =>
|
||||
@div eventDescription, class: 'event-description'
|
||||
@span eventDescription, class: 'label', title: eventName
|
||||
@div class: 'right', =>
|
||||
@div eventName, class: 'event-name'
|
||||
for binding in keyBindings[eventName] ? []
|
||||
@div binding, class: 'key-binding'
|
||||
@div class: 'clear-float'
|
||||
@kbd binding, class: 'key-binding'
|
||||
|
||||
confirmed: ({eventName}) ->
|
||||
@cancel()
|
||||
|
||||
@@ -408,7 +408,7 @@ describe "CommandPanel", ->
|
||||
|
||||
expect(previewList.scrollBottom()).toBeCloseTo previewList.prop('scrollHeight'), -1
|
||||
|
||||
previewList.trigger 'core:move-down'
|
||||
_.times previewList.getOperations().length, -> previewList.trigger 'core:move-up'
|
||||
expect(previewList.scrollTop()).toBe 0
|
||||
|
||||
it "doesn't bubble up the event and the command panel text doesn't change", ->
|
||||
|
||||
@@ -19,9 +19,9 @@ class FuzzyFinder extends DeferredAtomPackage
|
||||
new LoadPathsTask(rootView, callback).start()
|
||||
|
||||
onLoadEvent: (event, instance) ->
|
||||
if @projectPaths? and not @instance.projectPaths?
|
||||
@instance.projectPaths = @projectPaths
|
||||
@instance.reloadProjectPaths = false
|
||||
if @projectPaths? and not instance.projectPaths?
|
||||
instance.projectPaths = @projectPaths
|
||||
instance.reloadProjectPaths = false
|
||||
|
||||
switch event.type
|
||||
when 'fuzzy-finder:toggle-file-finder'
|
||||
|
||||
@@ -13,7 +13,7 @@ class FuzzyFinderView extends SelectList
|
||||
@instance = new FuzzyFinderView(rootView)
|
||||
|
||||
@viewClass: ->
|
||||
[super, 'fuzzy-finder'].join(' ')
|
||||
[super, 'fuzzy-finder', 'overlay', 'from-top'].join(' ')
|
||||
|
||||
allowActiveEditorChange: null
|
||||
maxItems: 10
|
||||
@@ -47,9 +47,9 @@ class FuzzyFinderView extends SelectList
|
||||
typeClass = 'pdf-name'
|
||||
else
|
||||
typeClass = 'text-name'
|
||||
@span fs.base(path), class: "file #{typeClass}"
|
||||
@span fs.base(path), class: "file label #{typeClass}"
|
||||
if folder = fs.directory(path)
|
||||
@span "- #{folder}/", class: 'directory'
|
||||
@span " - #{folder}/", class: 'directory'
|
||||
|
||||
openPath: (path) ->
|
||||
@rootView.open(path, {@allowActiveEditorChange}) if path
|
||||
|
||||
@@ -3,14 +3,13 @@ _ = require 'underscore'
|
||||
Git = require 'git'
|
||||
|
||||
module.exports =
|
||||
loadPaths: (rootPath, ignoredNames, ignoreGitIgnoredFiles) ->
|
||||
loadPaths: (rootPath, ignoredNames, excludeGitIgnoredPaths) ->
|
||||
paths = []
|
||||
repo = Git.open(rootPath, refreshIndexOnFocus: false) if ignoreGitIgnoredFiles
|
||||
repo = Git.open(rootPath, refreshIndexOnFocus: false) if excludeGitIgnoredPaths
|
||||
isIgnored = (path) ->
|
||||
for segment in path.split('/')
|
||||
return true if _.contains(ignoredNames, segment)
|
||||
return true if repo?.isPathIgnored(fs.join(rootPath, path))
|
||||
false
|
||||
repo?.isPathIgnored(fs.join(rootPath, path))
|
||||
onFile = (path) ->
|
||||
paths.push(path) unless isIgnored(path)
|
||||
onDirectory = (path) ->
|
||||
|
||||
@@ -6,11 +6,11 @@ class LoadPathsTask extends Task
|
||||
super('fuzzy-finder/src/load-paths-handler')
|
||||
|
||||
started: ->
|
||||
ignoredNames = config.get("fuzzyFinder.ignoredNames") ? []
|
||||
ignoredNames = ignoredNames.concat(config.get("core.ignoredNames") ? [])
|
||||
ignoreGitIgnoredFiles = config.get("core.hideGitIgnoredFiles")
|
||||
ignoredNames = config.get('fuzzyFinder.ignoredNames') ? []
|
||||
ignoredNames = ignoredNames.concat(config.get('core.ignoredNames') ? [])
|
||||
excludeGitIgnoredPaths = config.get('core.hideGitIgnoredFiles')
|
||||
rootPath = @rootView.project.getPath()
|
||||
@callWorkerMethod('loadPaths', rootPath, ignoredNames, ignoreGitIgnoredFiles)
|
||||
@callWorkerMethod('loadPaths', rootPath, ignoredNames, excludeGitIgnoredPaths)
|
||||
|
||||
pathsLoaded: (paths) ->
|
||||
@terminate()
|
||||
|
||||
@@ -22,10 +22,10 @@ class Gists
|
||||
success: (response) =>
|
||||
pasteboard.write(response.html_url)
|
||||
notification = $$ ->
|
||||
@div class: 'gist-notification', =>
|
||||
@div class: 'message-area', =>
|
||||
@span "Gist #{response.id} created", class: 'message'
|
||||
@br()
|
||||
@span "The url is on your clipboard", class: 'clipboard'
|
||||
@div class: 'notification', =>
|
||||
@span class: 'icon icon-gist mega-icon'
|
||||
@div class: 'content', =>
|
||||
@h3 "Gist #{response.id} created", class: 'title'
|
||||
@p "The url is on your clipboard", class: 'message'
|
||||
@rootView.append(notification.hide())
|
||||
notification.fadeIn().delay(2000).fadeOut(complete: -> $(this).remove())
|
||||
|
||||
@@ -44,8 +44,8 @@ describe "Gists package", ->
|
||||
expect(pasteboard.read()[0]).toBe 'https://gist.github.com/1'
|
||||
|
||||
it "flashes that the Gist was created", ->
|
||||
expect(rootView.find('.gist-notification')).toExist()
|
||||
expect(rootView.find('.gist-notification .message').text()).toBe 'Gist 1 created'
|
||||
expect(rootView.find('.notification')).toExist()
|
||||
expect(rootView.find('.notification .title').text()).toBe 'Gist 1 created'
|
||||
advanceClock(2000)
|
||||
expect(rootView.find('.gist-notification')).not.toExist()
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ class GoToLineView extends View
|
||||
@activate: (rootView) -> new GoToLineView(rootView)
|
||||
|
||||
@content: ->
|
||||
@div class: 'go-to-line', =>
|
||||
@div class: 'go-to-line overlay from-top mini', =>
|
||||
@subview 'miniEditor', new Editor(mini: true)
|
||||
@div class: 'message', outlet: 'message'
|
||||
|
||||
|
||||
@@ -30,9 +30,9 @@ describe "SymbolsView", ->
|
||||
expect(symbolsView.find('.loading')).toBeEmpty()
|
||||
expect(rootView.find('.symbols-view')).toExist()
|
||||
expect(symbolsView.list.children('li').length).toBe 2
|
||||
expect(symbolsView.list.children('li:first').find('.function-name')).toHaveText 'quicksort'
|
||||
expect(symbolsView.list.children('li:first').find('.label')).toHaveText 'quicksort'
|
||||
expect(symbolsView.list.children('li:first').find('.function-details')).toHaveText 'Line 1'
|
||||
expect(symbolsView.list.children('li:last').find('.function-name')).toHaveText 'quicksort.sort'
|
||||
expect(symbolsView.list.children('li:last').find('.label')).toHaveText 'quicksort.sort'
|
||||
expect(symbolsView.list.children('li:last').find('.function-details')).toHaveText 'Line 2'
|
||||
expect(symbolsView).not.toHaveClass "error"
|
||||
expect(symbolsView.error).not.toBeVisible()
|
||||
@@ -165,7 +165,7 @@ describe "SymbolsView", ->
|
||||
editor.setCursorBufferPosition([8,14])
|
||||
editor.trigger 'symbols-view:go-to-declaration'
|
||||
expect(symbolsView.list.children('li').length).toBe 1
|
||||
expect(symbolsView.list.children('li:first').find('.function-name')).toHaveText 'tagged.js'
|
||||
expect(symbolsView.list.children('li:first').find('.label')).toHaveText 'tagged.js'
|
||||
|
||||
describe "project symbols", ->
|
||||
it "displays all tags", ->
|
||||
@@ -181,9 +181,9 @@ describe "SymbolsView", ->
|
||||
expect(symbolsView.find('.loading')).toBeEmpty()
|
||||
expect(rootView.find('.symbols-view')).toExist()
|
||||
expect(symbolsView.list.children('li').length).toBe 4
|
||||
expect(symbolsView.list.children('li:first').find('.function-name')).toHaveText 'callMeMaybe'
|
||||
expect(symbolsView.list.children('li:first').find('.label')).toHaveText 'callMeMaybe'
|
||||
expect(symbolsView.list.children('li:first').find('.function-details')).toHaveText 'tagged.js'
|
||||
expect(symbolsView.list.children('li:last').find('.function-name')).toHaveText 'thisIsCrazy'
|
||||
expect(symbolsView.list.children('li:last').find('.label')).toHaveText 'thisIsCrazy'
|
||||
expect(symbolsView.list.children('li:last').find('.function-details')).toHaveText 'tagged.js'
|
||||
expect(symbolsView).not.toHaveClass "error"
|
||||
expect(symbolsView.error).not.toBeVisible()
|
||||
|
||||
@@ -12,7 +12,7 @@ class SymbolsView extends SelectList
|
||||
@activate: (rootView) ->
|
||||
@instance = new SymbolsView(rootView)
|
||||
|
||||
@viewClass: -> "#{super} symbols-view"
|
||||
@viewClass: -> "#{super} symbols-view overlay from-top"
|
||||
|
||||
filterKey: 'name'
|
||||
|
||||
@@ -22,14 +22,13 @@ class SymbolsView extends SelectList
|
||||
itemForElement: ({position, name, file}) ->
|
||||
$$ ->
|
||||
@li =>
|
||||
@div name, class: 'function-name'
|
||||
@div name, class: 'label'
|
||||
@div class: 'right', =>
|
||||
if position
|
||||
text = "Line #{position.row + 1}"
|
||||
else
|
||||
text = fs.base(file)
|
||||
@div text, class: 'function-details'
|
||||
@div class: 'clear-float'
|
||||
|
||||
toggleFileSymbols: ->
|
||||
if @hasParent()
|
||||
|
||||
@@ -38,6 +38,10 @@ describe "Tabs", ->
|
||||
expect(editor.getActiveEditSessionIndex()).toBe 1
|
||||
expect(tabs.find('.tab:eq(1)')).toHaveClass 'active'
|
||||
|
||||
it "sets the title on each tab to be the full path of the edit session", ->
|
||||
expect(tabs.find('.tab:eq(0) .file-name').attr('title')).toBe editor.editSessions[0].getPath()
|
||||
expect(tabs.find('.tab:eq(1) .file-name').attr('title')).toBe editor.editSessions[1].getPath()
|
||||
|
||||
describe "when the active edit session changes", ->
|
||||
it "highlights the tab for the newly-active edit session", ->
|
||||
editor.setActiveEditSessionIndex(0)
|
||||
@@ -60,6 +64,11 @@ describe "Tabs", ->
|
||||
expect(tabs.find('.tab').length).toBe 3
|
||||
expect(tabs.find('.tab:eq(2) .file-name').text()).toBe 'untitled'
|
||||
|
||||
it "removes the tab's title", ->
|
||||
rootView.open()
|
||||
expect(tabs.find('.tab').length).toBe 3
|
||||
expect(tabs.find('.tab:eq(2) .file-name').attr('title')).toBeUndefined()
|
||||
|
||||
describe "when an edit session is removed", ->
|
||||
it "removes the tab for the removed edit session", ->
|
||||
editor.setActiveEditSessionIndex(0)
|
||||
|
||||
@@ -28,7 +28,7 @@ module.exports =
|
||||
cson += @stringifyBoolean(value)
|
||||
else if _.isNumber(value)
|
||||
cson += @stringifyNumber(value)
|
||||
else if _.isNull(value)
|
||||
else if _.isNull(value) or value is undefined
|
||||
cson += @stringifyNull(value)
|
||||
else if _.isArray(value)
|
||||
cson += @stringifyArray(value, indentLevel + 2)
|
||||
|
||||
@@ -152,35 +152,33 @@ module.exports =
|
||||
undefined
|
||||
|
||||
isCompressedExtension: (ext) ->
|
||||
_.contains([
|
||||
_.indexOf([
|
||||
'.gz'
|
||||
'.jar'
|
||||
'.tar'
|
||||
'.zip'
|
||||
], ext)
|
||||
], ext, true) >= 0
|
||||
|
||||
isImageExtension: (ext) ->
|
||||
_.contains([
|
||||
_.indexOf([
|
||||
'.gif'
|
||||
'.jpeg'
|
||||
'.jpg'
|
||||
'.png'
|
||||
'.tiff'
|
||||
], ext)
|
||||
], ext, true) >= 0
|
||||
|
||||
isPdfExtension: (ext) ->
|
||||
_.contains([
|
||||
'.pdf'
|
||||
], ext)
|
||||
ext is '.pdf'
|
||||
|
||||
isMarkdownExtension: (ext) ->
|
||||
_.contains([
|
||||
_.indexOf([
|
||||
'.markdown'
|
||||
'.md'
|
||||
'.mkd'
|
||||
'.mkdown'
|
||||
'.ron'
|
||||
], ext)
|
||||
], ext, true) >= 0
|
||||
|
||||
readObject: (path) ->
|
||||
contents = @read(path)
|
||||
@@ -190,6 +188,14 @@ module.exports =
|
||||
else
|
||||
JSON.parse(contents)
|
||||
|
||||
writeObject: (path, object) ->
|
||||
if @extension(path) is '.cson'
|
||||
CSON = require 'cson'
|
||||
content = CSON.stringify(object)
|
||||
else
|
||||
content = JSON.stringify(object, undefined, 2)
|
||||
@write(path, "#{content}\n")
|
||||
|
||||
readPlist: (path) ->
|
||||
plist = require 'plist'
|
||||
object = null
|
||||
|
||||
@@ -12,6 +12,19 @@ self.console =
|
||||
log: -> callTaskMethod 'log', arguments...
|
||||
error: -> callTaskMethod 'error', arguments...
|
||||
|
||||
window.document =
|
||||
createElement: ->
|
||||
setAttribute: ->
|
||||
getElementsByTagName: -> []
|
||||
appendChild: ->
|
||||
documentElement:
|
||||
insertBefore: ->
|
||||
removeChild: ->
|
||||
getElementById: -> {}
|
||||
createComment: -> {}
|
||||
createDocumentFragment: -> {}
|
||||
self.document = window.document
|
||||
|
||||
# `callTaskMethod` can be used to invoke method's on the parent `Task` object
|
||||
# back in the window thread.
|
||||
self.callTaskMethod = (method, args...) ->
|
||||
@@ -19,9 +32,10 @@ self.callTaskMethod = (method, args...) ->
|
||||
|
||||
# The worker's initial handler replaces itself when `start` is invoked
|
||||
self.handler =
|
||||
start: ({resourcePath, requirePath, handlerPath}) ->
|
||||
self.resourcePath = resourcePath
|
||||
window.resourcePath = resourcePath
|
||||
start: ({resourcePath, globals, requirePath, handlerPath}) ->
|
||||
for key, value of globals
|
||||
self[key] = value
|
||||
window[key] = value
|
||||
importScripts(requirePath)
|
||||
require 'config'
|
||||
self.handler = require(handlerPath)
|
||||
|
||||
@@ -17,7 +17,10 @@ class Task
|
||||
|
||||
startWorker: ->
|
||||
@callWorkerMethod 'start'
|
||||
resourcePath: window.resourcePath
|
||||
globals:
|
||||
resourcePath: window.resourcePath
|
||||
navigator:
|
||||
userAgent: navigator.userAgent
|
||||
requirePath: require.getPath('require')
|
||||
handlerPath: @path
|
||||
|
||||
|
||||
@@ -53,4 +53,11 @@ html, body {
|
||||
left: 0;
|
||||
right: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Octicons Regular';
|
||||
src: url("octicons-regular-webfont.woff") format("woff");
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
83
static/command-panel.css
Normal file
83
static/command-panel.css
Normal file
@@ -0,0 +1,83 @@
|
||||
.command-panel {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list {
|
||||
max-height: 300px;
|
||||
overflow: auto;
|
||||
margin: 0 1px 5px 10px;
|
||||
position: relative;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.command-panel .preview-count {
|
||||
font-size: 11px;
|
||||
text-align: right;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
content: "\f011";
|
||||
position: relative;
|
||||
top: 1px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .operation {
|
||||
padding-top: 2px;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .line-number {
|
||||
padding-left: 3px;
|
||||
margin-right: 1ex;
|
||||
text-align: right;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path-match-number {
|
||||
padding-left: 8px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .preview {
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .preview .match {
|
||||
-webkit-border-radius: 2px;
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor .prompt:before {
|
||||
color: #969696;
|
||||
content: '\f078';
|
||||
font-family: 'Octicons Regular';
|
||||
position: relative;
|
||||
top: 0;
|
||||
left: -5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor .editor {
|
||||
position: relative;
|
||||
left: -4px;
|
||||
margin-right: -4px;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor {
|
||||
display: -webkit-box;
|
||||
}
|
||||
|
||||
.error-messages {
|
||||
padding: 5px 1em;
|
||||
color: white;
|
||||
}
|
||||
@@ -6,10 +6,23 @@
|
||||
-webkit-box-flex: 1;
|
||||
position: relative;
|
||||
z-index: 0;
|
||||
font-family: Inconsolata, Monaco, Courier;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
.editor.mini {
|
||||
height: auto;
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.editor.mini .cursor {
|
||||
width: 2px;
|
||||
line-height: 20px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.cursor-line {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .gutter {
|
||||
@@ -19,14 +32,54 @@
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number {
|
||||
padding-right: .5em;
|
||||
min-width: 35px;
|
||||
box-sizing: border-box;
|
||||
text-align: right;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
.editor .gutter .line-numbers {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.fold.cursor-line {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.fold:after {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.editor.mini .gutter {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number:after {
|
||||
font-size: 0.8em;
|
||||
content: '\f078';
|
||||
font-family: 'Octicons Regular';
|
||||
-webkit-font-smoothing: antialiased;
|
||||
color: #fba0e3;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.editor .fold-marker:after {
|
||||
content: '\2026';
|
||||
opacity: .8;
|
||||
color: #fba0e3;
|
||||
padding-left: .2em;
|
||||
}
|
||||
|
||||
.editor .line.cursor-line .fold-marker {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .invisible {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
.editor .vertical-scrollbar {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
|
||||
@@ -1,17 +1,8 @@
|
||||
.fuzzy-finder ol {
|
||||
overflow: hidden;
|
||||
-webkit-user-select: none;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.fuzzy-finder ol:empty {
|
||||
margin-bottom: 0;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.fuzzy-finder .directory {
|
||||
color: #b2b2b2;
|
||||
padding-left: .5em;
|
||||
color: rgba(0, 0, 0, 0.5);
|
||||
word-break: break-word;
|
||||
margin-left: 5px;
|
||||
line-height: 150%;
|
||||
}
|
||||
|
||||
.fuzzy-finder .file:before {
|
||||
@@ -1,8 +0,0 @@
|
||||
.grammar-view {
|
||||
width: 50%;
|
||||
margin-left: -25%;
|
||||
}
|
||||
|
||||
.grammar-view ol {
|
||||
max-height: 300px;
|
||||
}
|
||||
57
static/notification.css
Normal file
57
static/notification.css
Normal file
@@ -0,0 +1,57 @@
|
||||
.notification {
|
||||
position: absolute;
|
||||
top: 40px;
|
||||
left: 50%;
|
||||
margin-left: -5%;
|
||||
z-index: 9999;
|
||||
border: 2px solid rgba(0, 0, 0, 0.2);
|
||||
border-radius: 5px;
|
||||
box-shadow:
|
||||
inset 1px 1px 0 rgba(255, 255, 255, 0.05),
|
||||
0 0 5px rgba(0, 0, 0, 0.5);
|
||||
background: -webkit-linear-gradient(
|
||||
rgba(20, 20, 20, 0.5),
|
||||
rgba(0, 0, 0, 0.5));
|
||||
color: #eee;
|
||||
width: 300px;
|
||||
}
|
||||
|
||||
.notification .content {
|
||||
padding: 10px;
|
||||
margin-left: 42px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.notification .content:after {
|
||||
content: ".";
|
||||
display: block;
|
||||
clear: both;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.notification .title {
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
|
||||
.notification .message {
|
||||
font-size: 12px;
|
||||
color: #777;
|
||||
}
|
||||
|
||||
.notification .icon {
|
||||
display: inline-block;
|
||||
float: left;
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 32px;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
/* TODO: Full Octicon Support */
|
||||
.icon-gist {
|
||||
content: "\f20e";
|
||||
}
|
||||
35
static/overlay.css
Normal file
35
static/overlay.css
Normal file
@@ -0,0 +1,35 @@
|
||||
.overlay {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
width: 500px;
|
||||
margin-left: -250px;
|
||||
background: #303030;
|
||||
color: #eee;
|
||||
padding: 10px;
|
||||
z-index: 9999;
|
||||
box-sizing: border-box;
|
||||
border: 1px solid rgba(255, 255, 255, 0.1);
|
||||
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.overlay .editor.mini {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.overlay .message {
|
||||
padding-top: 5px;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
.overlay.mini {
|
||||
width: 200px;
|
||||
margin-left: -100px;
|
||||
}
|
||||
|
||||
.overlay.from-top {
|
||||
border-top: none;
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
}
|
||||
17
static/popover-list.css
Normal file
17
static/popover-list.css
Normal file
@@ -0,0 +1,17 @@
|
||||
.select-list.popover-list {
|
||||
width: 200px;
|
||||
border: 2px solid #222;
|
||||
-webkit-box-shadow: 0 0 3px 3px rgba(0, 0, 0, .5);
|
||||
margin-left: 0px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.select-list.popover-list ol {
|
||||
position: relative;
|
||||
overflow-y: scroll;
|
||||
max-height: 200px;
|
||||
}
|
||||
|
||||
.select-list.popover-list ol li {
|
||||
padding: 5px;
|
||||
}
|
||||
@@ -1,19 +1,45 @@
|
||||
.select-list {
|
||||
position: absolute;
|
||||
width: 600px;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
margin-left: -300px;
|
||||
box-sizing: border-box;
|
||||
z-index: 99;
|
||||
}
|
||||
|
||||
.select-list .editor {
|
||||
box-sizing: border-box;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.select-list ol {
|
||||
border: 1px solid #212121;
|
||||
position: relative;
|
||||
overflow-y: auto;
|
||||
max-height: 312px;
|
||||
margin: 0;
|
||||
background: red;
|
||||
padding: 0;
|
||||
line-height: 100%;
|
||||
}
|
||||
|
||||
.select-list ol:empty {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.select-list ol li {
|
||||
padding: 10px;
|
||||
box-sizing: border-box;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.select-list li .label {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.select-list li .right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.select-list .key-binding {
|
||||
border-radius: 2px;
|
||||
margin-left: 5px;
|
||||
padding: 3px;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
.select-list ol li:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
.select-list .error {
|
||||
font-weight: bold;
|
||||
color: white;
|
||||
text-shadow: 0 1px 0 #4E0000;
|
||||
}
|
||||
48
static/status-bar.css
Normal file
48
static/status-bar.css
Normal file
@@ -0,0 +1,48 @@
|
||||
.status-bar {
|
||||
padding: 4px 10px 3px;
|
||||
font-size: 11px;
|
||||
line-height: 14px;
|
||||
}
|
||||
|
||||
.status-bar .cursor-position,
|
||||
.status-bar .grammar-name {
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.status-bar .grammar-name {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.status-bar .branch-label {
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
.status-bar .git-status.octicons {
|
||||
display: none;
|
||||
padding-left: 10px;
|
||||
margin-top:-2px;
|
||||
}
|
||||
|
||||
.status-bar .octicons:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 14px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
line-height: 14px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.status-bar .branch-icon:before {
|
||||
content: "\f020";
|
||||
}
|
||||
|
||||
.status-bar .modified-status-icon:before {
|
||||
content: "\f26d";
|
||||
}
|
||||
|
||||
.status-bar .new-status-icon:before {
|
||||
content: "\f26b";
|
||||
}
|
||||
66
static/tabs.css
Normal file
66
static/tabs.css
Normal file
@@ -0,0 +1,66 @@
|
||||
.tabs {
|
||||
font: caption;
|
||||
margin-bottom: 1px;
|
||||
}
|
||||
|
||||
.tab {
|
||||
cursor: default;
|
||||
padding: 2px 21px 2px 9px;
|
||||
}
|
||||
|
||||
.tab.file-modified .close-icon {
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
.tab.file-modified .close-icon:before {
|
||||
content: "";
|
||||
}
|
||||
|
||||
.tab.active:before,
|
||||
.tab.active:after {
|
||||
position: absolute;
|
||||
bottom: -1px;
|
||||
width: 4px;
|
||||
height: 4px;
|
||||
content: " ";
|
||||
z-index: 3;
|
||||
}
|
||||
|
||||
.tab.active:before {
|
||||
left: -4px;
|
||||
}
|
||||
|
||||
.tab.active:after {
|
||||
right: -4px;
|
||||
border-width: 0 0 1px 1px;
|
||||
}
|
||||
|
||||
.tab.active:first-child:before {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.tab .file-name {
|
||||
font-size: 11px;
|
||||
text-shadow: 0 -1px 1px black;
|
||||
}
|
||||
|
||||
.tab .close-icon {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 14px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
display: block;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
right: 4px;
|
||||
top: -1px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tab .close-icon:before {
|
||||
content: "\f081";
|
||||
}
|
||||
|
||||
.tab .close-icon:hover {
|
||||
color: white;
|
||||
}
|
||||
121
static/tree-view.css
Normal file
121
static/tree-view.css
Normal file
@@ -0,0 +1,121 @@
|
||||
.tree-view .entries {
|
||||
margin-left: 12px;
|
||||
}
|
||||
|
||||
.tree-view .entries .file .name {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
.tree-view .file .name,
|
||||
.tree-view .directory .header {
|
||||
padding-top: 4px;
|
||||
padding-bottom: 4px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.tree-view-dialog {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt {
|
||||
padding-bottom: 3px;
|
||||
font-size: 12px;
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt span {
|
||||
position: relative;
|
||||
top: -1px;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 3px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt.add:before {
|
||||
content: "\f086";
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt.move:before {
|
||||
content: "\f03e";
|
||||
}
|
||||
|
||||
.tree-view .directory .header .name,
|
||||
.tree-view .file .name {
|
||||
position: relative;
|
||||
padding-left: 21px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .name:before,
|
||||
.tree-view .file .name:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.tree-view .disclosure-arrow:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 12px;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
line-height: 16px;
|
||||
margin-right: 3px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .directory-icon:before {
|
||||
content: "\f016";
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .repository-icon:before {
|
||||
content: "\f001";
|
||||
top: -4px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .submodule-icon:before {
|
||||
content: "\f017";
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
.tree-view .file .text-icon:before {
|
||||
content: "\f011";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .image-icon:before {
|
||||
content: "\f012";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .compressed-icon:before {
|
||||
content: "\f013";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .pdf-icon:before {
|
||||
content: "\f014";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .directory > .header .disclosure-arrow:before {
|
||||
content: "\f05a";
|
||||
}
|
||||
|
||||
.tree-view .directory.expanded > .header .disclosure-arrow:before {
|
||||
content: "\f05b";
|
||||
}
|
||||
@@ -21,13 +21,6 @@ html, body,
|
||||
-webkit-transition: background 300ms ease-out;
|
||||
}
|
||||
|
||||
.clear-float {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Octicons Regular';
|
||||
src: url("octicons-regular-webfont.woff") format("woff");
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
.wrap-guide {
|
||||
background: rgba(150, 150, 150, 0.1);
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
.select-list.autocomplete {
|
||||
min-width: 150px;
|
||||
border: 2px solid #222;
|
||||
webkit-box-shadow: 0 0 3px 3px rgba(0, 0, 0, .5);
|
||||
margin-left: 0px;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.autocomplete ol {
|
||||
position: relative;
|
||||
overflow-y: scroll;
|
||||
max-height: 200px;
|
||||
}
|
||||
|
||||
.autocomplete ol li {
|
||||
padding: 0.1em 0.2em;
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
.command-palette {
|
||||
width: 50%;
|
||||
margin-left: -25%;
|
||||
}
|
||||
|
||||
.command-palette ol {
|
||||
max-height: 300px;
|
||||
}
|
||||
|
||||
.command-palette ol .event-description {
|
||||
float: left;
|
||||
display: inline-block;
|
||||
margin-right: .5em;
|
||||
margin: 4px 0;
|
||||
}
|
||||
|
||||
.command-palette li .right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.command-palette ol .event-name, .command-palette ol .key-binding {
|
||||
display: inline-block;
|
||||
margin: 4px 0;
|
||||
margin-right: .5em;
|
||||
font-size: 90%;
|
||||
color: #ddd;
|
||||
-webkit-border-radius: 3px;
|
||||
padding: 0 4px;
|
||||
}
|
||||
|
||||
.command-palette ol .event-name {
|
||||
background: rgba(0, 0, 0, .2);
|
||||
}
|
||||
|
||||
.command-palette ol .key-binding {
|
||||
background: rgba(255, 255, 255, .1);
|
||||
}
|
||||
@@ -2,27 +2,18 @@
|
||||
background-color: #303030;
|
||||
border: 1px solid #252525;
|
||||
color: #dedede;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list {
|
||||
max-height: 300px;
|
||||
overflow: auto;
|
||||
margin: 0 1px 5px 10px;
|
||||
position: relative;
|
||||
background-color: #1e1e1e;
|
||||
color: #C5C8C6;
|
||||
cursor: default;
|
||||
border: 1px solid rgba(0, 0, 0, 0.5);
|
||||
border-bottom: 1px solid rgba(180, 180, 180, 0.2);
|
||||
border-right: 1px solid rgba(180, 180, 180, 0.2);
|
||||
}
|
||||
|
||||
.command-panel .preview-count {
|
||||
font-size: 11px;
|
||||
color: #969696;
|
||||
text-align: right;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list li.selected, .command-panel .preview-list li.operation:hover {
|
||||
@@ -34,37 +25,14 @@
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path {
|
||||
padding-left: 5px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
content: "\f011";
|
||||
position: relative;
|
||||
top: 1px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .operation {
|
||||
padding-top: 2px;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .line-number {
|
||||
padding-left: 3px;
|
||||
color: rgba(255, 255, 255, .3);
|
||||
margin-right: 1ex;
|
||||
text-align: right;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path-match-number {
|
||||
padding-left: 8px;
|
||||
color: rgba(255, 255, 255, .3);
|
||||
}
|
||||
|
||||
@@ -74,32 +42,5 @@
|
||||
|
||||
.command-panel .preview-list .preview .match {
|
||||
background-color: rgba(255, 255, 255, .2);
|
||||
-webkit-border-radius: 2px;
|
||||
padding: 1px;
|
||||
color: yellow;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor {
|
||||
display: -webkit-box;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor .prompt:before {
|
||||
color: #969696;
|
||||
content: '\f078';
|
||||
font-family: 'Octicons Regular';
|
||||
position: relative;
|
||||
top: 0;
|
||||
left: -5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor .editor {
|
||||
position: relative;
|
||||
left: -4px;
|
||||
margin-right: -4px;
|
||||
}
|
||||
|
||||
.error-messages {
|
||||
padding: 5px 1em;
|
||||
color: white;
|
||||
}
|
||||
|
||||
@@ -1,34 +1,9 @@
|
||||
.editor {
|
||||
font-family: Inconsolata, Monaco, Courier;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
.editor.mini {
|
||||
height: auto;
|
||||
line-height: 25px;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
border-bottom: 1px solid rgba(180, 180, 180, 0.2);
|
||||
border-right: 1px solid rgba(180, 180, 180, 0.2);
|
||||
}
|
||||
|
||||
.editor.mini .cursor {
|
||||
width: 2px;
|
||||
line-height: 20px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number {
|
||||
padding-right: .5em;
|
||||
min-width: 35px;
|
||||
box-sizing: border-box;
|
||||
text-align: right;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.cursor-line {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .gutter.drop-shadow {
|
||||
-webkit-box-shadow: -2px 0px 10px 2px #222;
|
||||
}
|
||||
@@ -48,35 +23,3 @@
|
||||
color: #fba0e3;
|
||||
opacity: .8;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.fold.cursor-line {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number:after {
|
||||
font-size: 0.8em;
|
||||
content: '\f078';
|
||||
font-family: 'Octicons Regular';
|
||||
-webkit-font-smoothing: antialiased;
|
||||
color: #fba0e3;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.fold:after {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.editor .fold-marker:after {
|
||||
content: '\2026';
|
||||
opacity: .8;
|
||||
color: #fba0e3;
|
||||
padding-left: .2em;
|
||||
}
|
||||
|
||||
.editor .line.cursor-line .fold-marker {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .invisible {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
.fuzzy-finder ol {
|
||||
overflow: hidden;
|
||||
-webkit-user-select: none;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.fuzzy-finder ol:empty {
|
||||
margin-bottom: 0;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.fuzzy-finder .directory {
|
||||
color: #b2b2b2;
|
||||
padding-left: .5em;
|
||||
}
|
||||
|
||||
.fuzzy-finder .file:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
margin-left: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.fuzzy-finder .file.text-name:before {
|
||||
content: "\f011";
|
||||
}
|
||||
|
||||
.fuzzy-finder .file.image-name:before {
|
||||
content: "\f012";
|
||||
}
|
||||
|
||||
.fuzzy-finder .file.compressed-name:before {
|
||||
content: "\f013";
|
||||
}
|
||||
|
||||
.fuzzy-finder .file.pdf-name:before {
|
||||
content: "\f014";
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
.gist-notification {
|
||||
position: absolute;
|
||||
top: 6px;
|
||||
left: 50%;
|
||||
margin-left: -5%;
|
||||
z-index: 99;
|
||||
padding-left: 5px;
|
||||
padding-right: 10px;
|
||||
-webkit-box-shadow: 0px 0px 5px 5px #222;
|
||||
color: #BBB;
|
||||
background-color: #333;
|
||||
}
|
||||
|
||||
.gist-notification .message-area {
|
||||
float: right;
|
||||
padding-top: 11px;
|
||||
}
|
||||
|
||||
.gist-notification .message {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.gist-notification .clipboard {
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
.gist-notification:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 32px;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
content: "\f08c";
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
.go-to-line {
|
||||
position: absolute;
|
||||
width: 200px;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
margin-left: -100px;
|
||||
box-sizing: border-box;
|
||||
z-index: 99;
|
||||
background-color: #484848;
|
||||
border: 1px solid #444;
|
||||
color: #d2d2d2;
|
||||
box-shadow: 0 0 10px #000;
|
||||
border-bottom-left-radius: 3px;
|
||||
border-bottom-right-radius: 3px;
|
||||
padding: 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.go-to-line .editor {
|
||||
box-sizing: border-box;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.go-to-line .message {
|
||||
padding-top: 2px;
|
||||
font-size: 11px;
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
.grammar-view ol li {
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
.grammar-view ol li.grammar {
|
||||
padding-left: 21px;
|
||||
}
|
||||
|
||||
.grammar-view ol li.current-grammar:before {
|
||||
font-family: 'Octicons Regular';
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
color: #ccc;
|
||||
content: '\f03a';
|
||||
}
|
||||
@@ -2,20 +2,12 @@
|
||||
"stylesheets":[
|
||||
"atom.css",
|
||||
"editor.css",
|
||||
"grammar-view.css",
|
||||
"select-list.css",
|
||||
"tree-view.css",
|
||||
"tabs.css",
|
||||
"wrap-guide.css",
|
||||
"status-bar.css",
|
||||
"symbols-view.css",
|
||||
"markdown-preview.css",
|
||||
"fuzzy-finder.css",
|
||||
"command-panel.css",
|
||||
"command-palette.css",
|
||||
"command-logger.css",
|
||||
"autocomplete.css",
|
||||
"gists.css",
|
||||
"go-to-line.css"
|
||||
"command-logger.css"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,30 +1,26 @@
|
||||
.select-list {
|
||||
background-color: #303030;
|
||||
border: 1px solid #404040;
|
||||
color: #d2d2d2;
|
||||
box-shadow: 0 0 10px #000;
|
||||
border-bottom-left-radius: 3px;
|
||||
border-bottom-right-radius: 3px;
|
||||
padding: 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.select-list ol {
|
||||
border: 1px solid #212121;
|
||||
}
|
||||
|
||||
.select-list ol li {
|
||||
background-color: #292929;
|
||||
border-bottom: 1px solid #1e1e1e;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.select-list ol li:last-child {
|
||||
border-bottom: none;
|
||||
.select-list li .label {
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
.select-list .editor {
|
||||
margin-bottom: 5px;
|
||||
.select-list li .right {
|
||||
color: #999;
|
||||
display: inline-block;
|
||||
margin-top: -3px;
|
||||
}
|
||||
|
||||
.select-list .key-binding {
|
||||
background: -webkit-linear-gradient(
|
||||
rgba(100, 100, 100, 0.5),
|
||||
rgba(70,70,70, 0.5));
|
||||
color: #ccc;
|
||||
-webkit-box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.1);
|
||||
display: inline-block;
|
||||
line-height: 100%;
|
||||
}
|
||||
|
||||
.select-list li:hover {
|
||||
@@ -35,8 +31,14 @@
|
||||
background-image: -webkit-linear-gradient(#7e7e7e, #737373);
|
||||
}
|
||||
|
||||
.select-list .error {
|
||||
font-weight: bold;
|
||||
color: white;
|
||||
text-shadow: 0 1px 0 #4E0000;
|
||||
.select-list .directory {
|
||||
color: #777;
|
||||
}
|
||||
|
||||
.select-list ol .selected .label {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.select-list ol .selected .directory {
|
||||
color: #ccc;
|
||||
}
|
||||
@@ -1,61 +1,15 @@
|
||||
.status-bar {
|
||||
background-color: #303030;
|
||||
border-top: 1px solid #454545;
|
||||
padding: 4px 10px 3px;
|
||||
font-size: 11px;
|
||||
line-height: 14px;
|
||||
color: #969696;
|
||||
}
|
||||
|
||||
.status-bar .cursor-position,
|
||||
.status-bar .grammar-name {
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.status-bar .grammar-name {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.status-bar .branch-label {
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
.status-bar .git-status.octicons {
|
||||
display: none;
|
||||
padding-left: 10px;
|
||||
margin-top:-2px;
|
||||
}
|
||||
|
||||
.status-bar .octicons:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 14px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
line-height: 14px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.status-bar .branch-icon:before {
|
||||
content: "\f020";
|
||||
}
|
||||
|
||||
.status-bar .git-status.octicons.modified-status-icon {
|
||||
color: #f78a46;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.status-bar .modified-status-icon:before {
|
||||
content: "\f26d";
|
||||
}
|
||||
|
||||
.status-bar .git-status.octicons.new-status-icon {
|
||||
color: #5293d8;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.status-bar .new-status-icon:before {
|
||||
content: "\f26b";
|
||||
}
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
.symbols-view {
|
||||
width: 50%;
|
||||
margin-left: -25%;
|
||||
}
|
||||
|
||||
.symbols-view ol {
|
||||
max-height: 300px;
|
||||
}
|
||||
|
||||
.symbols-view ol li {
|
||||
padding: 2px;
|
||||
border-bottom: 1px solid rgba(255, 255, 255, .05);
|
||||
}
|
||||
|
||||
.symbols-view ol .function-name {
|
||||
float: left;
|
||||
display: inline-block;
|
||||
margin-right: .5em;
|
||||
margin: 4px 0;
|
||||
}
|
||||
|
||||
.symbols-view li .right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.symbols-view ol .function-details {
|
||||
display: inline-block;
|
||||
margin: 4px 0;
|
||||
margin-right: .5em;
|
||||
font-size: 90%;
|
||||
color: #ddd;
|
||||
-webkit-border-radius: 3px;
|
||||
padding: 0 4px;
|
||||
background: rgba(0, 0, 0, .2);
|
||||
}
|
||||
@@ -1,14 +1,10 @@
|
||||
.tabs {
|
||||
background: #333333;
|
||||
border-bottom: 4px solid #424242;
|
||||
font: caption;
|
||||
box-shadow: inset 0 -1px 0 #2e2e2e, 0 1px 0 #191919;
|
||||
margin-bottom: 1px;
|
||||
}
|
||||
|
||||
.is-focused .tab {
|
||||
cursor: default;
|
||||
padding: 2px 21px 2px 9px;
|
||||
background-image: -webkit-linear-gradient(#444, #3d3d3d);
|
||||
border-top: 1px solid #383838;
|
||||
border-right: 1px solid #2e2e2e;
|
||||
@@ -29,8 +25,6 @@
|
||||
}
|
||||
|
||||
.tab {
|
||||
cursor: default;
|
||||
padding: 2px 21px 2px 9px;
|
||||
background-color: #555;
|
||||
background-image: none;
|
||||
border-top: 1px solid #383838;
|
||||
@@ -78,11 +72,6 @@
|
||||
|
||||
.tab.file-modified .close-icon {
|
||||
border: 3px solid #777;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
.tab.file-modified .close-icon:before {
|
||||
content: "";
|
||||
}
|
||||
|
||||
.is-focused .tab.active:first-child,
|
||||
@@ -92,12 +81,6 @@
|
||||
|
||||
.tab.active:before,
|
||||
.tab.active:after {
|
||||
position: absolute;
|
||||
bottom: -1px;
|
||||
width: 4px;
|
||||
height: 4px;
|
||||
content: " ";
|
||||
z-index: 3;
|
||||
border: 1px solid #595959;
|
||||
}
|
||||
|
||||
@@ -105,57 +88,26 @@
|
||||
border-bottom-right-radius: 4px;
|
||||
border-width: 0 1px 1px 0;
|
||||
box-shadow: 2px 2px 0 #424242;
|
||||
left: -4px;
|
||||
}
|
||||
|
||||
.is-focused .tab.active:after {
|
||||
right: -4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
border-width: 0 0 1px 1px;
|
||||
box-shadow: -2px 2px 0 #424242;
|
||||
}
|
||||
|
||||
.tab.active:before {
|
||||
border-bottom-right-radius: 4px;
|
||||
border-width: 0 1px 1px 0;
|
||||
box-shadow: 2px 2px 0 #424242;
|
||||
left: -4px;
|
||||
}
|
||||
|
||||
.tab.active:after {
|
||||
right: -4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
border-width: 0 0 1px 1px;
|
||||
box-shadow: -2px 2px 0 #424242;
|
||||
}
|
||||
.is-focused .tab.active:first-child:before {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.tab:hover {
|
||||
color: #c8c8c8;
|
||||
background-image: -webkit-linear-gradient(#474747, #444444);
|
||||
}
|
||||
|
||||
.tab .file-name {
|
||||
font-size: 11px;
|
||||
text-shadow: 0 -1px 1px black;
|
||||
}
|
||||
|
||||
.tab .close-icon {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 14px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
display: block;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
right: 4px;
|
||||
top: -1px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tab .close-icon:before {
|
||||
content: "\f081";
|
||||
}
|
||||
|
||||
.tab .close-icon:hover {
|
||||
color: white;
|
||||
}
|
||||
|
||||
@@ -12,14 +12,6 @@
|
||||
text-shadow: 0 -1px 0 #000;
|
||||
}
|
||||
|
||||
.tree-view .entries {
|
||||
margin-left: 12px;
|
||||
}
|
||||
|
||||
.tree-view .entries .file .name {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
.tree-view .directory.selected > .header > .name,
|
||||
.tree-view .selected > .name {
|
||||
color: #d2d2d2;
|
||||
@@ -58,17 +50,6 @@
|
||||
color: #ebebeb;
|
||||
}
|
||||
|
||||
.tree-view .file .name,
|
||||
.tree-view .directory .header {
|
||||
padding-top: 4px;
|
||||
padding-bottom: 4px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.tree-view .ignored {
|
||||
color: #555;
|
||||
}
|
||||
@@ -85,105 +66,8 @@
|
||||
background-color: #333;
|
||||
border-top: 1px solid #555;
|
||||
-webkit-box-shadow: 0 0 3px 3px rgba(0, 0, 0, .5);
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt {
|
||||
padding-bottom: 3px;
|
||||
font-size: 12px;
|
||||
line-height: 16px;
|
||||
color: #aaa;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt span {
|
||||
position: relative;
|
||||
top: -1px;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 3px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt.add:before {
|
||||
content: "\f086";
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt.move:before {
|
||||
content: "\f03e";
|
||||
}
|
||||
|
||||
.tree-view .directory .header .name,
|
||||
.tree-view .file .name {
|
||||
position: relative;
|
||||
padding-left: 21px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .name:before,
|
||||
.tree-view .file .name:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.tree-view .disclosure-arrow:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 12px;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
line-height: 16px;
|
||||
margin-right: 3px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .directory-icon:before {
|
||||
content: "\f016";
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .repository-icon:before {
|
||||
content: "\f001";
|
||||
top: -4px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .submodule-icon:before {
|
||||
content: "\f017";
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
.tree-view .file .text-icon:before {
|
||||
content: "\f011";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .image-icon:before {
|
||||
content: "\f012";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .compressed-icon:before {
|
||||
content: "\f013";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .pdf-icon:before {
|
||||
content: "\f014";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .directory > .header .disclosure-arrow:before {
|
||||
content: "\f05a";
|
||||
}
|
||||
|
||||
.tree-view .directory.expanded > .header .disclosure-arrow:before {
|
||||
content: "\f05b";
|
||||
}
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
.wrap-guide {
|
||||
background: rgba(150, 150, 150, 0.1);
|
||||
}
|
||||
@@ -21,13 +21,6 @@ html, body,
|
||||
-webkit-transition: background 300ms ease-out;
|
||||
}
|
||||
|
||||
.clear-float {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Octicons Regular';
|
||||
src: url("octicons-regular-webfont.woff") format("woff");
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
.wrap-guide {
|
||||
background: rgba(150, 150, 150, 0.1);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
.select-list.autocomplete {
|
||||
min-width: 150px;
|
||||
webkit-box-shadow: 0 0 3px rgba(0, 0, 0, .5);
|
||||
margin-left: 0px;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.autocomplete ol {
|
||||
position: relative;
|
||||
overflow-y: scroll;
|
||||
max-height: 200px;
|
||||
}
|
||||
|
||||
.autocomplete ol li {
|
||||
padding: 0.1em 0.2em;
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
.command-palette {
|
||||
width: 50%;
|
||||
margin-left: -25%;
|
||||
}
|
||||
|
||||
.command-palette ol {
|
||||
max-height: 300px;
|
||||
}
|
||||
|
||||
.command-palette ol .event-description {
|
||||
float: left;
|
||||
display: inline-block;
|
||||
margin-right: .5em;
|
||||
margin: 4px 0;
|
||||
}
|
||||
|
||||
.command-palette li .right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.command-palette ol .event-name, .command-palette ol .key-binding {
|
||||
display: inline-block;
|
||||
margin: 4px 0;
|
||||
margin-right: .5em;
|
||||
font-size: 90%;
|
||||
color: #969696;
|
||||
-webkit-border-radius: 3px;
|
||||
padding: 0 4px;
|
||||
}
|
||||
|
||||
.command-palette ol .event-name {
|
||||
background: rgba(0, 0, 0, .3);
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.command-palette ol .key-binding {
|
||||
background: #fff;
|
||||
}
|
||||
@@ -2,25 +2,16 @@
|
||||
background-color: #f4f4f4;
|
||||
border-top: 1px solid #979797;
|
||||
color: #ededed;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list {
|
||||
max-height: 300px;
|
||||
overflow: auto;
|
||||
margin-bottom: 10px;
|
||||
position: relative;
|
||||
background-color: #e7e7e7;
|
||||
color: #222;
|
||||
cursor: default;
|
||||
border: 1px solid #989898;
|
||||
}
|
||||
|
||||
.command-panel .preview-count {
|
||||
font-size: 11px;
|
||||
color: #333;
|
||||
text-align: right;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list li.selected, .command-panel .preview-list li.operation:hover {
|
||||
@@ -28,71 +19,17 @@
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path {
|
||||
padding-left: 5px;
|
||||
color: #3D5075;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
content: "\f011";
|
||||
position: relative;
|
||||
top: 1px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .operation {
|
||||
padding-top: 2px;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .line-number {
|
||||
padding-left: 3px;
|
||||
color: #3D5075;
|
||||
margin-right: 1ex;
|
||||
text-align: right;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .path-match-number {
|
||||
padding-left: 8px;
|
||||
color: #3D5075;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .preview {
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.command-panel .preview-list .preview .match {
|
||||
background-color: #c8d4d7;
|
||||
-webkit-border-radius: 2px;
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor {
|
||||
display: -webkit-box;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor .prompt:before {
|
||||
color: #969696;
|
||||
content: '\f078';
|
||||
font-family: 'Octicons Regular';
|
||||
position: relative;
|
||||
top: -4px;
|
||||
left: -5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.command-panel .prompt-and-editor .editor {
|
||||
position: relative;
|
||||
left: -4px;
|
||||
margin-right: -4px;
|
||||
}
|
||||
|
||||
.error-messages {
|
||||
padding: 5px 1em;
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,4 @@
|
||||
.editor {
|
||||
font-family: Inconsolata, Monaco, Courier;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
.editor.mini {
|
||||
height: auto;
|
||||
line-height: 25px;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
border-bottom: 1px solid rgba(180, 180, 180, 0.3);
|
||||
border-right: 1px solid rgba(180, 180, 180, 0.3);
|
||||
@@ -15,21 +8,6 @@
|
||||
|
||||
.editor.mini .cursor {
|
||||
background: #333;
|
||||
width: 2px;
|
||||
line-height: 20px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number {
|
||||
padding-right: .5em;
|
||||
min-width: 35px;
|
||||
box-sizing: border-box;
|
||||
text-align: right;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.cursor-line {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .gutter.drop-shadow {
|
||||
@@ -50,36 +28,4 @@
|
||||
.editor .gutter .line-number.fold {
|
||||
color: #fba0e3;
|
||||
opacity: .8;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.fold.cursor-line {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number:after {
|
||||
font-size: 0.8em;
|
||||
content: '\f078';
|
||||
font-family: 'Octicons Regular';
|
||||
-webkit-font-smoothing: antialiased;
|
||||
color: #fba0e3;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.editor .gutter .line-number.fold:after {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.editor .fold-marker:after {
|
||||
content: '\2026';
|
||||
opacity: .8;
|
||||
color: #fba0e3;
|
||||
padding-left: .2em;
|
||||
}
|
||||
|
||||
.editor .line.cursor-line .fold-marker {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.editor .invisible {
|
||||
opacity: 0.2;
|
||||
}
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
.gist-notification {
|
||||
position: absolute;
|
||||
top: 6px;
|
||||
left: 50%;
|
||||
margin-left: -5%;
|
||||
z-index: 99;
|
||||
padding-left: 5px;
|
||||
padding-right: 10px;
|
||||
-webkit-box-shadow: 0px 0px 5px 5px #222;
|
||||
color: #BBB;
|
||||
background-color: #444;
|
||||
}
|
||||
|
||||
.gist-notification .message-area {
|
||||
float: right;
|
||||
padding-top: 11px;
|
||||
}
|
||||
|
||||
.gist-notification .message {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.gist-notification .clipboard {
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
.gist-notification:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 32px;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
content: "\f08c";
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
.go-to-line {
|
||||
position: absolute;
|
||||
width: 200px;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
margin-left: -100px;
|
||||
box-sizing: border-box;
|
||||
z-index: 99;
|
||||
background-color: #eeeeee;
|
||||
border: 1px solid #c6c6c6;
|
||||
color: #323232;
|
||||
box-shadow: 0 0 10px #555;
|
||||
border-bottom-left-radius: 3px;
|
||||
border-bottom-right-radius: 3px;
|
||||
padding: 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.go-to-line .editor {
|
||||
box-sizing: border-box;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.go-to-line .message {
|
||||
padding-top: 2px;
|
||||
font-size: 11px;
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
.grammar-view ol li {
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
.grammar-view ol li.grammar {
|
||||
padding-left: 21px;
|
||||
}
|
||||
|
||||
.grammar-view ol li.current-grammar:before {
|
||||
font-family: 'Octicons Regular';
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
color: #ccc;
|
||||
content: '\f03a';
|
||||
}
|
||||
@@ -2,20 +2,12 @@
|
||||
"stylesheets":[
|
||||
"atom.css",
|
||||
"editor.css",
|
||||
"grammar-view.css",
|
||||
"select-list.css",
|
||||
"tree-view.css",
|
||||
"tabs.css",
|
||||
"wrap-guide.css",
|
||||
"status-bar.css",
|
||||
"symbols-view.css",
|
||||
"markdown-preview.css",
|
||||
"fuzzy-finder.css",
|
||||
"command-panel.css",
|
||||
"command-palette.css",
|
||||
"command-logger.css",
|
||||
"autocomplete.css",
|
||||
"gists.css",
|
||||
"go-to-line.css"
|
||||
"command-logger.css"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -3,10 +3,6 @@
|
||||
border: 1px solid #c6c6c6;
|
||||
color: #323232;
|
||||
box-shadow: 0 0 10px #555;
|
||||
border-bottom-left-radius: 3px;
|
||||
border-bottom-right-radius: 3px;
|
||||
padding: 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.select-list ol {
|
||||
@@ -16,15 +12,6 @@
|
||||
.select-list ol li {
|
||||
background-color: #f5f5f5;
|
||||
border-bottom: 1px solid #ccc;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.select-list ol li:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
.select-list .editor {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.select-list li:hover {
|
||||
@@ -33,10 +20,4 @@
|
||||
|
||||
.select-list ol .selected {
|
||||
background-color: #e0e0e0;
|
||||
}
|
||||
|
||||
.select-list .error {
|
||||
font-weight: bold;
|
||||
color: white;
|
||||
text-shadow: 0 1px 0 #4E0000;
|
||||
}
|
||||
@@ -1,61 +1,15 @@
|
||||
.status-bar {
|
||||
background-color: #e5e5e5;
|
||||
border-top: 1px solid #959595;
|
||||
padding: 4px 10px 3px;
|
||||
font-size: 11px;
|
||||
line-height: 14px;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.status-bar .cursor-position,
|
||||
.status-bar .grammar-name {
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.status-bar .grammar-name {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.status-bar .branch-label {
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
.status-bar .git-status.octicons {
|
||||
display: none;
|
||||
padding-left: 10px;
|
||||
margin-top:-2px;
|
||||
}
|
||||
|
||||
.status-bar .octicons:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 14px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
line-height: 14px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.status-bar .branch-icon:before {
|
||||
content: "\f020";
|
||||
}
|
||||
|
||||
.status-bar .git-status.octicons.modified-status-icon {
|
||||
color: #f78a46;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.status-bar .modified-status-icon:before {
|
||||
content: "\f26d";
|
||||
}
|
||||
|
||||
.status-bar .git-status.octicons.new-status-icon {
|
||||
color: #5293d8;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.status-bar .new-status-icon:before {
|
||||
content: "\f26b";
|
||||
}
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
.symbols-view {
|
||||
width: 50%;
|
||||
margin-left: -25%;
|
||||
}
|
||||
|
||||
.symbols-view ol {
|
||||
max-height: 300px;
|
||||
}
|
||||
|
||||
.symbols-view ol li {
|
||||
padding: 2px;
|
||||
border-bottom: 1px solid rgba(255, 255, 255, .05);
|
||||
}
|
||||
|
||||
.symbols-view ol .function-name {
|
||||
float: left;
|
||||
display: inline-block;
|
||||
margin-right: .5em;
|
||||
margin: 4px 0;
|
||||
}
|
||||
|
||||
.symbols-view li .right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.symbols-view ol .function-details {
|
||||
display: inline-block;
|
||||
margin: 4px 0;
|
||||
margin-right: .5em;
|
||||
font-size: 90%;
|
||||
color: #ddd;
|
||||
-webkit-border-radius: 3px;
|
||||
padding: 0 4px;
|
||||
background: rgba(0, 0, 0, .2);
|
||||
}
|
||||
@@ -1,14 +1,10 @@
|
||||
.tabs {
|
||||
background: #e3e3e3;
|
||||
border-bottom: 4px solid #e5e5e5;
|
||||
font: caption;
|
||||
box-shadow: inset 0 -1px 0 #959595, 0 1px 0 #989898;
|
||||
margin-bottom: 1px;
|
||||
}
|
||||
|
||||
.is-focused .tab {
|
||||
cursor: default;
|
||||
padding: 2px 21px 2px 9px;
|
||||
background-image: -webkit-linear-gradient(#e0e0e0, #bfbfbf);
|
||||
border-top: none;
|
||||
border-right: 1px solid #959595;
|
||||
@@ -18,8 +14,6 @@
|
||||
}
|
||||
|
||||
.tab {
|
||||
cursor: default;
|
||||
padding: 2px 21px 2px 9px;
|
||||
background-image: none;
|
||||
background-color: #e0e0e0);
|
||||
border-top: none;
|
||||
@@ -61,10 +55,6 @@
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
.tab.file-modified .close-icon:before {
|
||||
content: "";
|
||||
}
|
||||
|
||||
.tab.active,
|
||||
.tab.active:hover {
|
||||
border-bottom-color: #e5e5e5;
|
||||
@@ -74,56 +64,31 @@
|
||||
|
||||
.tab.active:before,
|
||||
.tab.active:after {
|
||||
position: absolute;
|
||||
bottom: -1px;
|
||||
width: 4px;
|
||||
height: 4px;
|
||||
content: " ";
|
||||
z-index: 3;
|
||||
border: 1px solid #959595;
|
||||
}
|
||||
|
||||
.tab.active:before {
|
||||
left: -5px;
|
||||
border-bottom-right-radius: 4px;
|
||||
border-width: 0 1px 1px 0;
|
||||
box-shadow: 2px 2px 0 #e5e5e5;
|
||||
left: -5px;
|
||||
}
|
||||
|
||||
.tab.active:after {
|
||||
right: -5px;
|
||||
border-bottom-left-radius: 4px;
|
||||
border-width: 0 0 1px 1px;
|
||||
box-shadow: -2px 2px 0 #e5e5e5;
|
||||
}
|
||||
.tab.active:first-child:before {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.tab:hover {
|
||||
background-image: -webkit-linear-gradient(#e2e2e2, #e0e0e0);
|
||||
}
|
||||
|
||||
.tab .file-name {
|
||||
font-size: 11px;
|
||||
text-shadow: 0 1px 0 #e0e0e0;
|
||||
}
|
||||
|
||||
.tab .close-icon {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 14px;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
display: block;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
right: 4px;
|
||||
top: -1px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tab .close-icon:before {
|
||||
content: "\f081";
|
||||
}
|
||||
|
||||
.tab .close-icon:hover {
|
||||
color: #aaa;
|
||||
}
|
||||
|
||||
@@ -12,14 +12,6 @@
|
||||
text-shadow: 0 1px 0 #fff;
|
||||
}
|
||||
|
||||
.tree-view .entries {
|
||||
margin-left: 12px;
|
||||
}
|
||||
|
||||
.tree-view .entries .file .name {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
.tree-view .directory.selected > .header > .name,
|
||||
.tree-view .selected > .name {
|
||||
color: #262626;
|
||||
@@ -95,17 +87,6 @@
|
||||
color: #3D4552;
|
||||
}
|
||||
|
||||
.tree-view .file .name,
|
||||
.tree-view .directory .header {
|
||||
padding-top: 4px;
|
||||
padding-bottom: 4px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.tree-view .ignored {
|
||||
color: #555;
|
||||
}
|
||||
@@ -121,105 +102,8 @@
|
||||
.tree-view-dialog {
|
||||
background-color: #e7e7e7;
|
||||
border-top: 1px solid #989898;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt {
|
||||
padding-bottom: 3px;
|
||||
font-size: 12px;
|
||||
line-height: 16px;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt span {
|
||||
position: relative;
|
||||
top: -1px;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 3px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt.add:before {
|
||||
content: "\f086";
|
||||
}
|
||||
|
||||
.tree-view-dialog .prompt.move:before {
|
||||
content: "\f03e";
|
||||
}
|
||||
|
||||
.tree-view .directory .header .name,
|
||||
.tree-view .file .name {
|
||||
position: relative;
|
||||
padding-left: 21px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .name:before,
|
||||
.tree-view .file .name:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 16px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.tree-view .disclosure-arrow:before {
|
||||
font-family: 'Octicons Regular';
|
||||
font-size: 12px;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
line-height: 16px;
|
||||
margin-right: 3px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .directory-icon:before {
|
||||
content: "\f016";
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .repository-icon:before {
|
||||
content: "\f001";
|
||||
top: -4px;
|
||||
}
|
||||
|
||||
.tree-view .directory .header .submodule-icon:before {
|
||||
content: "\f017";
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
.tree-view .file .text-icon:before {
|
||||
content: "\f011";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .image-icon:before {
|
||||
content: "\f012";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .compressed-icon:before {
|
||||
content: "\f013";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .file .pdf-icon:before {
|
||||
content: "\f014";
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
.tree-view .directory > .header .disclosure-arrow:before {
|
||||
content: "\f05a";
|
||||
}
|
||||
|
||||
.tree-view .directory.expanded > .header .disclosure-arrow:before {
|
||||
content: "\f05b";
|
||||
}
|
||||
}
|
||||
@@ -1,3 +0,0 @@
|
||||
.wrap-guide {
|
||||
background: rgba(150, 150, 150, 0.3);
|
||||
}
|
||||
Reference in New Issue
Block a user