Commit graph

305 commits

Author SHA1 Message Date
Héctor Ramos
73b9a1128b Switch to GFM-style heading anchors (#164) 2017-10-26 16:12:17 -07:00
Héctor Ramos
ba666cc6ae Remove sourceCodeButton config key (#181) 2017-10-26 12:16:36 -07:00
Hector Ramos
db8daa635d Merge branch 'master' of github.com:facebookexperimental/Docusaurus 2017-10-26 12:14:53 -07:00
Hector Ramos
9bb4f906fc Use RegExp with global flag to ensure all fenced code blocks have the hljs class applied 2017-10-26 12:14:46 -07:00
Ricky Vetter
3017554616 Delete unused styles (#180) 2017-10-26 12:10:53 -07:00
Joel Marcey
ae08fa31d6 Fix custom port number parsing... (#187)
* Fix custom port number parsing...

Checking if a port was in use raised a bug where the port coming in from the command line is a string and not an int. And that was causing the check to fail. Make the port an int from the get go

* Specifiy radix
2017-10-26 12:09:12 -07:00
Héctor Ramos
fb294ab845 [markdown] Remove client-side syntax highlighting (#189)
* Remove client side highlighting

* Update CSS rules to render plain code blocks with expected left border

* Add back codeColor background color config

* Ensure all pre code blocks use Highlight.js classes
2017-10-26 12:07:02 -07:00
Joel Marcey
f72df94dd3 Return empty object instead of false if no metadata (#182)
Closes #139
2017-10-26 07:02:52 -07:00
Héctor Ramos
140dcaa500 [CI] Switch to Circle 2 (#168)
* Switch to Circle 2

* Use Yarn in CI

* Move things around

* Fix Remarkable case issue

* Run placeholder test

* Update deploy script

Use multiline commit messages to ensure commit beign deployed is documented in git history
2017-10-25 14:04:24 -07:00
Eric Nakagawa
55b0f33f2a Allows periods in blog file names -- will allow for version numbers, etc (#163)
* Allows periods in blog file names -- will allow for version numbers, etc

* Removed debug lines...
2017-10-24 19:27:37 -07:00
Eric Nakagawa
a6bad7f92d Merge pull request #176 from ericnakagawa/write-translations-autogen
Improve translations guide + add comment about translations autogen
2017-10-24 19:21:19 -07:00
Joel Marcey
0df005484c Oops - forgot to remove debugging statement 2017-10-24 19:10:29 -07:00
Joel Marcey
7b2e950a4c Add previous and next titles to metadata props 2017-10-24 19:09:34 -07:00
Joel Marcey
429ffda351 Use title of previous and next if no i18n 2017-10-24 16:42:31 -07:00
Joel Marcey
78bd09dec3 Better logic 2017-10-24 16:35:32 -07:00
Eric Nakagawa
ee5c8a4278 Adds a note that languages.js is autogenerated
Add a comment about auto-generation to top of en.json file
2017-10-24 16:21:16 -07:00
Joel Marcey
7c1b48b92c Show doc names instead of previous and next
Use the previous and next doc metadata to show docs in the buttons
2017-10-24 16:20:32 -07:00
Joel Marcey
e0345bae86 Fix port check (#173)
Since the check is async, starting the server on the port was happening before the check finished. Thus even if the port wasn't being used, it would error out as if it was because the server would start it before the check was finished.
This way we only start the server after the check finishes.
2017-10-24 15:51:27 -07:00
Eric Nakagawa
867a49dd1c Removes #content from sidebar links and from within pages (#170) 2017-10-24 15:15:52 -07:00
Eric Nakagawa
c2243a3c20 Only show 'Read More' button on blog list page when post has <!-- truncate --> token (#161)
* Only show 'Read More' button on blog list page when the text includes a <truncate> token

* Remove console.log
2017-10-24 13:46:42 -07:00
Eric Nakagawa
a5320dbd36 Merge pull request #159 from JoelMarcey/port-in-use
Check if a port is in use
2017-10-24 13:32:26 -07:00
Héctor Ramos
49034dd6bb Fix Remarkable case issue (#166) 2017-10-24 10:49:13 -07:00
Héctor Ramos
b832176dc6 [markdown] Switch to Remarkable (#153)
* Switch to Remarkable
* Clean up references to custom code blocks
* Remove valdiateDOMNesting warning
* Add syntax highlighting
* Add Reason support
* Breaking change: prismColor to codeColor, remove CompLibrary.Prism, expose hljs
* Completely remove Prism and associated CSS rules
* Support loading plugins and scripts
* Remove CSS rules, allowing Highlight.js theme to be used entirely
* Remove unnecessary webplayer script
2017-10-24 09:45:21 -07:00
Joel Marcey
7bad58022c Check if a port is in use
Test:

Ran a separate server on port 3000

```
Checking if port 3000 is free...
Extracting translateable strings from files...
Loading translation files...
Generating Metadata for Docs....
Generating Metadata for Docs....
server.js triggered...
Generating Metadata for Docs....
Extracting translateable strings from files...
listening on port: 3000
Open http://localhost:3000/
Port 3000 is in use
```

Fixes #124
2017-10-23 18:32:39 -07:00
Ricky Vetter
58613545b6 add translateable strings and allow overriding of english strings (#158) 2017-10-23 15:01:26 -07:00
Ricky Vetter
65a5e02ec2 Remove animation on anchor hover (#156) 2017-10-23 06:31:11 -07:00
Joel Marcey
7e23f3e4ef Avoid null enabledLanguages when there is no languages.js file (#155)
```
var enabledLanguages = languages.filter(function (lang) {
                                  ^

TypeError: Cannot read property 'filter' of null
    at module.exports
```
2017-10-20 15:19:13 -07:00
Eric Nakagawa
574872d075 Only builds redirect pages if the current file is an english doc (#152) 2017-10-19 16:56:14 -07:00
Eric Nakagawa
d8b55fffa4 Fall back to English when strings are missing (#151) 2017-10-19 16:41:20 -07:00
Eric Nakagawa
dc0cc487fa Add back metadata generator (#150)
Rollback package.json
2017-10-19 13:43:03 -07:00
Eric Nakagawa
22d0cebc18 Merge pull request #149 from ericnakagawa/noop-redirect
Removed copy from redirect page, reduced delay to 0s for js and meta
2017-10-19 13:20:07 -07:00
Eric Nakagawa
7f7459baa5 Merge pull request #148 from ericnakagawa/default-localization-english
This PR will create a default set of docs to use when localization is…
2017-10-19 13:19:55 -07:00
Eric Nakagawa
a9571ebf4d Removed copy from redirect page, reduced delay to 0s for js and meta 2017-10-19 13:15:05 -07:00
Eric Nakagawa
7c80becb87 Fix bug in when running local server 2017-10-19 12:58:57 -07:00
Eric Nakagawa
bf2f0cf935 Typo fix 2017-10-19 10:27:03 -07:00
Eric Nakagawa
bfb28441b4 This PR will create a default set of docs to use when localization is enabled. This allows seeing using the site without having synced with crowdin. Once synced, those files will replace the default set generated by this PR. 2017-10-19 09:57:10 -07:00
Christopher Chedeau
57251a22c0 Ability to tweak the prism language (#146)
I want to be able to tweak the default tokenizer for syntax highlighting. The current one isn't as good as it could be.

With this PR, I would be able to add this to the siteConfig and it would give me the Prism access so that I can get proper syntax highlighting:

```js
  prism: function(Prism) {
    Prism.languages.javascript = Prism.languages.extend("javascript", {
      keyword: /\b(alias|as|async|await|base class|...|with)\b/,
      constant: /\b[A-Z][a-zA-Z0-9_]*\b/,
      builtin: /\bopen_file|...|invariant_violation|invariant|getcwd\b/,
      function: /\b[_$a-z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\()/,
    });
  },
```
2017-10-19 08:21:00 -07:00
Eric Nakagawa
c3a1d99964 Include baseUrl when redirecting /docs/ pages in a localized project (#147) 2017-10-19 07:29:48 -07:00
Joel Marcey
26f498a2db Add a check for languages.js in sitemap.js
Without this a build failure would occur for those that are not using the languages.js file.

e.g.,

```
sitemap.js triggered...
module.js:471
    throw err;
    ^

Error: Cannot find module '/home/ubuntu/fasttext-website/website/languages.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at module.exports (/home/ubuntu/fasttext-website/website/node_modules/docusaurus/lib/server/sitemap.js:48:15)
    at execute (/home/ubuntu/fasttext-website/website/node_modules/docusaurus/lib/server/generate.js:316:5)
    at Object.<anonymous> (/home/ubuntu/fasttext-website/website/node_modules/docusaurus/lib/build-files.js:31:1)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
Error: generating html failed
```
2017-10-18 15:43:25 -07:00
Eric Nakagawa
a4695a3083 Code cleanups for consistency & adds Docusaurus to meta tags (#138)
* Add a made with Docusaurus meta tag

* Code cleanups and changes for clarity

* Add back pages string extraction
2017-10-18 14:40:16 -07:00
Ricky Vetter
fd05bb3239 More consistent headers (#140)
* More consistent headers

* Clean up mobile blog posts styles
2017-10-18 13:04:29 -07:00
Eric Nakagawa
967970eaa5 Generates a file that redirects from /docs/file.html to /docs/en/folder.html when languages are enabled (languages.js is present) (#137) 2017-10-18 12:56:14 -07:00
Eric Nakagawa
bcba05ae03 Adds sitemap.xml. Adds 'Help Translate' to translatable strings. Error messages and fn name cleanups. (#136)
* added a note about needing more than one language to be enabled to allow for a drop down

* Removing debug statements

* Add 'Help Translate' to translatable strings, improves error messages around missing translated strings, calls write-translations on some routes

* Adds sitemap.xml to live server and build. Versioning not supported. -- Also did some file name and module cache cleanups.
2017-10-18 12:55:58 -07:00
Ricky Vetter
30eea17a24 upstream small screen header changes (#141) 2017-10-18 12:44:28 -07:00
Ricky Vetter
768ed88978 Add option to avoid indexing site (#142) 2017-10-18 11:35:30 -07:00
Christopher Chedeau
a26bba14c6 Add the ability to provide custom layout (#128)
* Add the ability to provide custom layout

When I designed the system, I added the ability to provide a custom layout that would use arbitrary JavaScript to render some custom pages. This is why files are called "DocsLayout.js", "BlogPostLayout.js"... This ability to customize it was [ripped out](https://github.com/facebook/react-native/blob/master/website/server/convert.js#L78) during the migration to Docusaurus but I need it for the project I'm working on right now (that should remain unnamed!).

This adds back the ability to do it in a way that fits the third party system. In order to provide a new layout:

1) Add a `layout` field in the header of your markdown file:

```js
---
layout: mylayout
---
```

2) In your `siteConfig`, add

```js
  layouts: {
    mylayout: function({React, Marked}) {
      return class extends React.Component {
        render() {
           return React.createElement('div', {}, this.props.metadata.layout);
         }
      }
    }
  }
```

I think that it's a reasonable to add and would unblock me :)

* Update DocsLayout.js
2017-10-18 10:20:13 -07:00
Christopher Chedeau
5693eba5d1 Allow for header and empty body (#127)
My hack of checking if the body was empty wasn't correct :(

```js
---
id: String
title: String
layout: stdlib
---
```

The above would be treated as pure content. Now it's working properly :)
2017-10-18 10:16:30 -07:00
Ricky Vetter
967d0b7f3c Make some changes to font size/spacing (#134) 2017-10-18 10:01:06 -07:00
Ricky Vetter
e85e0822e5 Use fixed position on mobile nav (#133) 2017-10-18 09:58:41 -07:00
Ricky Vetter
e723d21113 normalize header padding (#132) 2017-10-18 09:53:08 -07:00