Merge branch 'master' into patch-1

This commit is contained in:
Eugen 2017-04-23 05:53:21 +02:00 committed by GitHub
commit 05ec8112af
4 changed files with 221 additions and 0 deletions

View File

@ -46,3 +46,25 @@ Once the pull request is accepted, wait for the code to be deployed on a Mastodo
## Updating the translation
Keep an eye on the original English files in `app/assets/javascripts/components/locales` and `config/locales`. When they are updated, pass on the changes to your language files. For new strings, add the new lines to the same position and translate them. Once youre finished with the updates, you can submit a new pull request.
## Appendix A. Plural handling
Different languages use different plural forms to be taken care of by Mastodon.
For JavaScipt (`.jsx`) translations, this is done in [react-intl](https://github.com/yahoo/react-intl), by doing:
```
Here {appleCount, plural, one {is an apple} other {are {appleCount} apples}}.
```
On the other hand, `.yml` files are processed by [rails-i18n](https://github.com/svenfuchs/rails-i18n). Items that look like this are pluralized fields:
```YML
eat_apple:
one: You ate an apple.
other: You ate %{count} apples.
```
In both examples you can see a `one` case and an `other` case described for the pluralized strings. The exact strings is chosen by how many a certain quantity is -- when there is exactly one of something, the sentence goes to the `one` case; otherwise it goes to the `other` case. This how plualization works for English (`en`) and a few other languages.
There are, however, many languages that don't operate in the one-other way. Polish as four plural forms, named `one`, `few`, `many`, and `other` respectively. Arabic has six. Chinese, Japanese, and Korean only have one form called `other`. If your language does not use one/other plural forms, be sure to check out the cardinal part of this [Unicode CIDR Plural Rules](http://www.unicode.org/cldr/charts/28/supplemental/language_plural_rules.html) chart. Also as a rule of thumb, always start translaing with the `other` case in the English files as they are better generalized than the `one` case.

View File

@ -63,6 +63,10 @@ server {
try_files $uri @proxy;
}
location /assets {
add_header Cache-Control "public, max-age=31536000, immutable";
}
location @proxy {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;

View File

@ -42,3 +42,130 @@ Because Mastodon has been created from a blank slate, it is much simpler to have
Development of Mastodon and hosting of mastodon.social is funded through my [Patreon (also BTC/PayPal donations)](https://www.patreon.com/user?u=619786). Beyond that, I am not interested in VC funding, monetizing, advertising, or anything of that sort. I could offer setup/maintenance services on demand.
The software is free and open source and communities should host their own servers if they can, that way the costs are more or less distributed. Obviously it'd be hard for me to pay the bills if literally everyone decided to use the mastodon.social instance only.
#### Whats a “federation”?
Its a group of mastodon servers that share toots with each other.
#### Whats an “instance”?
Its a server that you can have an account on. Each has its own policies, because they can be run by anyone!
#### How many people signed up for Mastodon? Can I see a chart of user counts over time?
Sure, you can follow [@mastodonusercount@social.lou.lt](https://social.lou.lt/@mastodonusercount).
#### How do you really spell “mastdon”?
Its **mastodon** with two Os. You will get it wrong at least once.
#### How do I get this on Android?
Try [Tusky](https://play.google.com/store/apps/details?id=com.keylesspalace.tusky).
#### On Android, I really want multiple account support.
Try [TootyFruity](https://play.google.com/store/apps/details?id=ch.kevinegli.tootyfruity221258).
#### How do I get this on iPhone?
Try [Amaroq](https://itunes.apple.com/us/app/amaroq-for-mastodon/id1214116200). Also, Safari might be a choice.
#### Can Tusky do ‘💇’? How about feature “🔥”? And whats with Tuskys “⛱”?
You can follow or contact Tusky at [@Tusky@mastodon.social](https://mastodon.social/@Tusky), or the developers [@Vavassor@mastodon.social](https://mastodon.social/@Vavassor) and [@daycode@mastodon.social](https://mastodon.social/@daycode)
#### How do I search?
You can search for people and hashtags, but not general text. Use the box above the tooting area.
![Search Box](https://octodon.social/media/fytp1Gxgo13W-Gtx0LM)
#### How do I DM (Direct Message)?"
Click on the **globe** beneath your toot for privacy options, including DM.
#### I dont get the local vs. federated timeline thing.
“Local” toots are from the server you signed up at. “Federated” are the all the toots your server knows about. (It's complicated, but short version is: “toots from people that you and other locals follow.”)
#### Whats trending?
Follow the esteemed [@TrendingBot@mastodon.social](https://mastodon.social/@TrendingBot).
#### Whats “CW”?
“CW” stands for “Content Warning.” You can use it to hide your toot, like a spoiler.
#### Whats with the pineapples?
Theyre tasty, and they make people smile. Just go with it.
#### How do I delete my account?
At the moment, you will have to toot the admin of your instance for help on that one.
#### Who is my admin, and how do I contact/follow them?
Click on **Getting Started**, then **Extended Information**. An info page displays. Hopefully, they put their contact information in there!
![Getting Started](https://octodon.social/media/TKlZpSNRRcHBOEFNlGs) ![Extended Information](https://octodon.social/media/D7bfl1NYzNy4XIT8nLs) ![Info Page](https://octodon.social/media/zvoI8yUt4uurZcKqFRk)
#### Wow, I keep seeing offensive stuff from a particular instance, is there a way to block *all* of it?
Not without a lot of clicking, sorry. But, your instance admin can do it! Please contact her.
#### How do I get verified with a “✅”?
“✅” is an emoji, *only* for lulz. There is no verification on Mastodon. You can copy and paste “✅” into your bio if you wish, you cheeky monkey.
#### Can I edit a toot?
No, sorry. But you could delete and rewrite...
#### How do I view my favorite toots?
Click "Getting Started," then "Favourites."
![img](http://octodon.social/media/KKVbLbEdqa22oNNKQYg "Getting Started") ![img](https://octodon.social/media/wYG2bD7bAAplgZKkwH8 "Favourites")
#### Can I quote a toot?
Not currently. You must manually copy and paste the text to quote it.
#### If my instance shuts down forever, do I lose my data?
Yes you do.
#### Can I save my data?
Yes, some of it! Its under **Preferences->Data export**
![Data Export](https://octodon.social/media/Qkn_ELLQqCjZhWI5NQo)
#### I cant see toots of a remote user under their bio!
Click their avatar pic. This will take you directly to their instance, which displays all their public toots.
#### How do I see threads?
Click the toot body for **Expanded View**. This will show threads the toots connected to.
#### How do I link to toots?
Click the toot body for a **Expanded View**. Right-click on the **date beneath** the toot for a permalink.
#### How do I link to my bio?
In Firefox, right-click on your avatar picture. Select **Copy link location**.
![URL Bio](https://octodon.social/media/1K7gKcZIY1D_tYnwvj0)
#### Does clicking a #hashtag show local results, or federated?
Federated.
#### When I mute a boost, who gets muted, the booster or the original author?
The original author.
#### Can I preview the people on an instance, and what theyre saying?
Yes, try the excellent [instance preview tool](http://www.unmung.com/mastoview?url=mastodon.social&view=local).
#### How do I hide the toots of languages I dont understand?
The developers are working on this and other filtering options, stay tuned!
#### Is automatic translation supported?
Not yet, but there is a [Firefox TamperMonkey script](https://github.com/tomouchuu/mastodon-translate) that might work for you.
#### Do toots automatically broadcast federated, or stay local?
By default, toots are federated (public), and will show on both timelines. You can change the default behavior through **Settings->Preferences->Post Privacy.**
![Settings](https://octodon.social/media/kQB46sQCKN654Q-DOCY) ![Preferences](https://octodon.social/media/gtUtLEA_li6UlaqzOh8)![Post Privacy](https://octodon.social/media/f0euT4bv0Es5h-gMbg8)
#### I found a bug or have a suggestion for Mastodon.
You can file a bug or submit suggestions at [Mastodons Issue Tracker.](https://github.com/tootsuite/mastodon/issues)
#### Hey I love mastodon FAQs! Can I have more?
Heres more, from hardworking individuals trying to help, too.
* [https://hastebin.com/raw/xuqogukimu](https://hastebin.com/raw/xuqogukimu)
* [https://github.com/ThomasLeister/masto-faq](https://github.com/ThomasLeister/masto-faq)
* [http://mastoguide.info/Pages/FAQindex.html](http://mastoguide.info/Pages/FAQindex.html)
* [https://medium.com/tebelorg/my-first-10-days-on-mastodon-fediverse-f6f1d73db8d7](https://medium.com/tebelorg/my-first-10-days-on-mastodon-fediverse-f6f1d73db8d7)
* [https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md](https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/FAQ.md)

View File

@ -52,6 +52,8 @@ ___
- [For Go](https://github.com/mattn/go-mastodon)
- [For Scala](https://github.com/schwitzerm/scaladon)
- [For .Net](https://github.com/Tlaster/Mastodon.Net)
- [For Java, Kotlin](https://github.com/sys1yagi/mastodon4j)
- [For C#](https://github.com/pawotter/mastodon-api-cs)
___
@ -122,6 +124,14 @@ Returns an array of [Accounts](#account).
GET /api/v1/accounts/:id/following
Query parameters:
- `max_id` (optional): Get a list of followings with ID less than or equal this value
- `since_id` (optional): Get a list of followings with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 40, Max 80)
`max_id` and `since_id` are usually get from the `Link` header.
Returns an array of [Accounts](#account).
#### Getting an account's statuses:
@ -132,6 +142,11 @@ Query parameters:
- `only_media` (optional): Only return statuses that have media attachments
- `exclude_replies` (optional): Skip statuses that reply to other statuses
- `max_id` (optional): Get a list of statuses with ID less than or equal this value
- `since_id` (optional): Get a list of statuses with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 20, Max 40)
`max_id` and `since_id` are usually get from the `Link` header.
Returns an array of [Statuses](#status).
@ -202,6 +217,14 @@ These values should be requested in the app itself from the API for each new app
GET /api/v1/blocks
Query parameters:
- `max_id` (optional): Get a list of blocks with ID less than or equal this value
- `since_id` (optional): Get a list of blocks with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 40, Max 80)
`max_id` and `since_id` are usually get from the `Link` header.
Returns an array of [Accounts](#account) blocked by the authenticated user.
### Favourites
@ -210,6 +233,14 @@ Returns an array of [Accounts](#account) blocked by the authenticated user.
GET /api/v1/favourites
Query parameters:
- `max_id` (optional): Get a list of favourites with ID less than or equal this value
- `since_id` (optional): Get a list of favourites with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 20, Max 40)
`max_id` and `since_id` are usually get from the `Link` header.
Returns an array of [Statuses](#status) favourited by the authenticated user.
### Follow Requests
@ -218,6 +249,14 @@ Returns an array of [Statuses](#status) favourited by the authenticated user.
GET /api/v1/follow_requests
Query parameters:
- `max_id` (optional): Get a list of follow requests with ID less than or equal this value
- `since_id` (optional): Get a list of follow requests with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 40, Max 80)
`max_id` and `since_id` are usually get from the `Link` header.
Returns an array of [Accounts](#account) which have requested to follow the authenticated user.
#### Authorizing or rejecting follow requests:
@ -270,6 +309,14 @@ Returns an [Attachment](#attachment) that can be used when creating a status.
GET /api/v1/mutes
Query parameters:
- `max_id` (optional): Get a list of mutes with ID less than or equal this value
- `since_id` (optional): Get a list of mutes with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 40, Max 80)
`max_id` and `since_id` are usually get from the `Link` header.
Returns an array of [Accounts](#account) muted by the authenticated user.
### Notifications
@ -278,6 +325,14 @@ Returns an array of [Accounts](#account) muted by the authenticated user.
GET /api/v1/notifications
Query parameters:
- `max_id` (optional): Get a list of notifications with ID less than or equal this value
- `since_id` (optional): Get a list of notifications with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 15, Max 30)
`max_id` and `since_id` are usually get from the `Link` header.
Returns a list of [Notifications](#notification) for the authenticated user.
#### Getting a single notification:
@ -353,6 +408,14 @@ Returns a [Card](#card).
GET /api/v1/statuses/:id/reblogged_by
GET /api/v1/statuses/:id/favourited_by
Query parameters:
- `max_id` (optional): Get a list of reblogged/favourited with ID less than or equal this value
- `since_id` (optional): Get a list of reblogged/favourited with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 40, Max 80)
`max_id` and `since_id` are usually get from the `Link` header.
Returns an array of [Accounts](#account).
#### Posting a new status:
@ -401,6 +464,11 @@ Returns the target [Status](#status).
Query parameters:
- `local` (optional; public and tag timelines only): Only return statuses originating from this instance
- `max_id` (optional): Get a list of timelines with ID less than or equal this value
- `since_id` (optional): Get a list of timelines with ID greater than this value
- `limit` (optional): Maximum number of accounts to get (Default 20, Max 40)
`max_id` and `since_id` are usually get from the `Link` header.
Returns an array of [Statuses](#status), most recent ones first.
___