// Copyright © 2016 Abcum Ltd // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package slug func init() { // Merge language subs with the default one for _, sub := range []*map[rune]string{&en, &de, &fr, &es, &nl, &pl, &gr} { for key, value := range defaults { (*sub)[key] = value } } } var defaults = map[rune]string{ '"': "", '\'': "", '’': "", '‒': "-", // figure dash '–': "-", // en dash '—': "-", // em dash '―': "-", // horizontal bar } var en = map[rune]string{ '&': "and", '@': "at", } var de = map[rune]string{ '&': "und", '@': "an", } var fr = map[rune]string{ '&': "et", '@': "a", } var es = map[rune]string{ '&': "y", '@': "en", } var nl = map[rune]string{ '&': "en", '@': "at", } var pl = map[rune]string{ '&': "i", '@': "na", } var gr = map[rune]string{ '&': "kai", 'η': "i", 'ή': "i", 'Η': "i", 'ι': "i", 'ί': "i", 'Ι': "i", 'χ': "x", 'Χ': "x", }