| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241 |
- extends ../layout
- block vars
- - var suppressNavbar = true
- - var suppressFooter = true
- - var suppressDefaultJs = true
- block scripts
- //- Only use the native bootstrap on the editor page,
- //- since we use the Angular-based bootstrap elsewhere.
- script(src=jsPath+'libs/bootstrap-3.1.1.js')
- script(src=jsPath+'libs/jquery-layout.js')
- script(src=jsPath+'libs/jquery.storage.js')
- block content
- .editor(ng-controller="IdeController")
- .loading-screen(ng-show="state.loading")
- .container
- h3 Loading...
- .progress
- .progress-bar(ng-style="{'width': state.load_progress + '%'}")
- .global-alerts(ng-cloak)
- .alert.alert-danger.small(ng-if="connection.forced_disconnect")
- strong Disconnected
- | Please refresh the page to continue.
- .alert.alert-warning.small(ng-if="connection.reconnection_countdown")
- strong Lost Connection.
- | Reconnecting in {{ connection.reconnection_countdown }} secs.
- a.pull-right(href, ng-click="tryReconnectNow()") Try Now
- .alert.alert-warning.small(ng-if="connection.reconnecting")
- strong Reconnecting...
- aside#left-menu(
- ng-class="{ 'shown': ui.leftMenuShown }"
- ng-cloak
- )
- h4 Settings
- form
- .form-controls
- label(for="compiler") Compiler
- select.form-control(
- name="compiler"
- ng-model="project.compiler"
- )
- option(value='pdflatex') pdfLaTeX
- option(value='latex') LaTeX
- option(value='xelatex') XeLaTeX
- option(value='lualatex') LuaLaTeX
- .form-controls
- label(for="spellCheckLanguage") Spell Check
- select.form-control(
- name="spellCheckLanguage"
- ng-model="project.spellCheckLanguage"
- )
- option(value="") Off
- optgroup(label="Language")
- for language in languages
- option(
- value=language.code
- )= language.name
- .form-controls
- label(for="autoComplete") Auto-Complete
- input.form-control(
- type="checkbox"
- name="autoComplete"
- ng-model="settings.autoComplete"
- )
- .form-controls
- label(for="theme") Theme
- select.form-control(
- name="theme"
- ng-model="settings.theme"
- )
- each theme in themes
- option(value=theme) #{theme}
-
- .form-controls
- label(for="mode") Keybindings
- select.form-control(
- name="mode"
- ng-model="settings.mode"
- )
- option(value='default') None
- option(value='vim') Vim
- option(value='emacs') Emacs
- .form-controls
- label(for="fontSize") Font Size
- select.form-control(
- name="fontSize"
- ng-model="settings.fontSize"
- )
- each size in ['10','11','12','13','14','16','20','24']
- option(value=size) #{size}px
- #left-menu-mask(
- ng-show="ui.leftMenuShown",
- ng-click="ui.leftMenuShown = false"
- ng-cloak
- )
- header.toolbar.toolbar-header(ng-cloak, ng-hide="state.loading")
- a.btn.btn-full-height(
- href,
- ng-click="ui.leftMenuShown = true"
- tooltip="Menu",
- tooltip-placement="bottom"
- )
- i.fa.fa-bars
- span.name {{ project.name }}
- a(href='#', data-toggle="tooltip", title="Rename")
- i.fa.fa-pencil
- .toolbar-right
- a.btn.btn-full-height(href='#', tooltip="Share", tooltip-placement="bottom")
- i.fa.fa-group
- a.btn.btn-full-height(href='#', tooltip="Recent Changes", tooltip-placement="bottom")
- i.fa.fa-history
- a.btn.btn-full-height(href='#', tooltip="Chat", tooltip-placement="bottom")
- i.fa.fa-comment
- #ide-body(ng-cloak, layout="main", ng-hide="state.loading")
- include ./editor/file-tree
- .ui-layout-center
- .loading(ng-show="!editor.sharejs_doc || editor.opening")
- i.fa.fa-spin.fa-refresh
- | Loading...
- #editor(
- ace-editor,
- ng-show="!!editor.sharejs_doc && !editor.opening"
- theme="settings.theme",
- keybindings="settings.mode",
- font-size="settings.fontSize",
- auto-complete="settings.autoComplete",
- spell-check-language="project.spellCheckLanguage",
- annotations="onlineUserCursorAnnotations[editor.open_doc_id]"
- show-print-margin="false",
- sharejs-doc="editor.sharejs_doc",
- last-updated="editor.last_updated",
- cursor-position="editor.cursorPosition"
- )
- //- #loadingScreen
- //- h3 Loading...
- //- p#loadingMessage Loading editor
- //- #errorMessages
- //- #connectionLostMessage(style="display: none;")
- //- | Lost connection.
- //- span#trying-reconnect
- //- | Reconnecting in
- //- span#reconnection-countdown ?
- //- | seconds.
- //- a(href='#')#try-reconnect-now Try now.
- //- span#reconnecting
- //- | Reconnecting...
- //- #savingProblems(style="display: none")
- //- | Saving...
-
- //- div#toolbar.sidebar-navigation
- //- ul#tabs
- //- #toolbar-footer
- //- #tab-content.tab-content
- //- include ../templates
- //- include ../templates/dropbox
- script(src='/socket.io/socket.io.js')
- script(type='text/javascript').
- window.project_id = "!{project_id}"
- window.sharelatex = !{sharelatexObject};
- window.userSettings = !{userSettingsObject};
- window.user = !{userObject};
- window.csrfToken = "!{csrfToken}";
- window.requirejs = {
- "paths" : {
- "underscore": "../libs/underscore-1.3.3",
- "mathjax": "https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-AMS_HTML",
- "moment": "libs/moment-2.4.0",
- "ace": "#{jsPath}ace"
- },
- "urlArgs" : "fingerprint=#{fingerprint(jsPath + 'ide.js')}",
- "waitSeconds": 0,
- "shim": {
- "libs/backbone": {
- deps: ["libs/underscore-1.3.3"]
- },
- "libs/pdfListView/PdfListView": {
- deps: ["libs/pdf"]
- },
- "libs/pdf": {
- deps: ["libs/compatibility"]
- }
- }
- };
- script(type='text/javascript').
- ga('send', 'event', 'editor-interaction', 'editor-opened')
- - locals.suppressDefaultJs = true
- - var fingerprintedPath = fingerprint(jsPath+'libs/pdf.worker.js')
- - var pdfJsWorkerPath = jsPath+'libs/pdf.worker.js?fingerprint='+fingerprintedPath
- script(type='text/javascript').
- window.sharelatex.pdfJsWorkerPath = "#{pdfJsWorkerPath}"
- script(
- data-main=jsPath+'app/ide.js',
- baseurl=jsPath,
- data-ace-base=jsPath+'ace',
- src=jsPath+'libs/require.js?fingerprint='+fingerprint(jsPath + 'libs/require.js')
- )
- - if (!anonymous)
- script(type="text/javascript").
- var chatReq = require.config({
- context: "chat",
- baseUrl: "#{chatUrl}/chat"
- });
- chatReq(["require", "chat"], function(require, Chat) {
- new Chat({
- room: {
- project_id: window.userSettings.project_id
- },
- url: "#{chatUrl}"
- })
- });
-
|