2009-07-15 16 views

Odpowiedz

31

Aktualizacja luty 2016: bug 75981 została oficjalnie naprawiona!
See Jmini „s answer below

enter image description here


Aktualizacja lipca 2015 r 6 lat później:

Błąd wymienione poniżej wydaje się ustalone w Eclipse 4.x
Eric Wangcomments below:

@date ${id:date('YYYY-MMM-dd')} ${time} 

to daj mi angielskiego w formacie datetime zaćmienie 4.


Original Answer 2009 Eclipse 3.x

argh! Jest długotrwałe błędów dla że: bug 75981

Zmienna ${date} może być zwiększona, aby przyjąć argument (podobny do innych parametryzacjami dodawanych 3.3M1), np ${d:date(format)}, gdzie format jest wzorem dla SimpleDateFormat.

Jedynym rozwiązaniem byłoby, aby zmodyfikować klasa SimpleTemplateVariableResolver (jak opisano w this thread) z pakietu org.eclipse.jface.text.templates. (Masz tutaj example of such an extension).

To thread mentions źródeł, w których można znaleźć klasę.

\eclipse\plugins\org.eclipse.platform.source_3.1.0\src\org.eclipse.text_3.1.0\src.zip 

Przykład:

public static class Date extends SimpleTemplateVariableResolver { 
/** 
* Creates a new date variable 
*/ 
public Date() { 
super("date", TextTemplateMessages.getString("GlobalVariables.variable.description.date")); //$NON-NLS-1$ //$NON-NLS-2$ } 

protected String resolve(TemplateContext context) { 
    //return DateFormat.getDateInstance().format(new java.util.Date()); 
    DateFormat df = new SimpleDateFormat("dd/MM/yyyy"); 
    return df.format(new java.util.Date()); } } 
+2

'@date $ {id: data ('YYYY-MMM-dd')} $ { time} 'to daje mi angielski format datetime w Eclipse 4.5. –

+0

@EricWang Dziękuję za aktualizację. Odpowiednio zaktualizowałem odpowiedź. – VonC

+0

Jestem na 4.4.1 i to nie działa dla mnie. – fgysin

12

Można powiedzieć Eclipse do używania określonego locale różniący się od używanego systemu operacyjnego. Eclipse 3.5 (64-bitowy) nie używa ustawienia regionu MacOS X. MacOS X angielski język instalacyjny z Niemcami jako krajem dostarcza nieprawidłowy format daty.

Można go naprawić do instalacji Eclipse, gdy dołączyć następujące linie do swojego eclipse.ini:

-Duser.language=de 
-Duser.region=DE 
+0

Dziękuję bardzo! Pracował również dla wersji FI/FI! – Kimi

6

dodatkowe informacje dla tych, potykając się o tym ostatnio (jak ja):

ISO 8601 format daty, można użyć ustawień językowych fr-CA.

+3

dodaj tę linię do pliku eclipse.ini: -Duser.language = fr-ca, wówczas formatem daty będzie "2014-08-07". – Soli

+0

Mała wada: w GUI jest kilka miejsc, w których można uzyskać francuski format daty. Przykład: 14-10-27 (data komentarza) w porównaniu lokalnej historii. – Aconcagua

10

Naprawiłem Bug 75981 z Eclipse Neon M5.Możesz pobrać ten Milestone Release tutaj:

http://www.eclipse.org/downloads/index-developer.php

... lub czekać aż do czerwca 2016 roku na oficjalnej Neon wydaniu.

Tutaj szybkie opis jak to działa:

  • Jako, zanim będzie można użyć zmiennej date bez argumentu. Przykład: ${date}
  • Możesz użyć zmiennej z dodatkowymi argumentami. W tym przypadku będziesz musiał nazwać zmienną (ponieważ nie używasz innej daty, nazwa zmiennej nie ma znaczenia). Przykład: ${mydate:date}
    • Pierwszym parametrem jest format daty. Przykład: ${d:date('yyyy-MM-dd')}
    • Drugi parametr jest locale. Przykład: ${maDate:date('EEEE dd MMMM yyyy HH:mm:ss Z', 'fr')}

Edit Template in Eclipse Preferences

Więcej informacji o tej funkcji na moim blogu: Bug 75981 is fixed!

+1

Dobra robota! +1. Odwołuję się do twojej odpowiedzi w mojej, dla większej widoczności. – VonC

+0

Czy podobna opcja formatowania może być używana z $ {time}? –

+1

Ah, wygląda na to, że mogę uwzględnić formatowanie czasu w SimpleDateFormat, więc nie będę musiał używać $ {time}. –