Я наткнулся на этот пост, когда искал способ снять дополнительное форматирование с man-страниц. ansifilter сделал это, но это было далеко от желаемого результата (например, все ранее выделенные символы дублировались, например SSYYNNOOPPSSIISS
).
Для этой задачи правильной командой будет col -bx
, например:
groff -man -Tascii fopen.3 | col -bx > fopen.3.txt
Если вы хотите обработать ошибку в WebView, вы должны переопределить onReceivedError в соответствии со следующим кодом,
private class MyWebViewClient extends WebViewClient {
.
.
.
// api<23
@Override
public void onReceivedError(WebView view, int errorCode, String description, String url) {
view.stopLoading();
webview.loadUrl("file:///android_asset/error/error.html"); // load error page from asset folder
// handle error
}
// api> 23
@Override
@TargetApi(android.os.Build.VERSION_CODES.M)
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
view.stopLoading();
webview.loadUrl("file:///android_asset/error/error.html"); // load error page from asset folder
// handle error
// super.onReceivedError(view, request, error);
}
.
.
.
}
, вы также можете проверить соединение в shouldOverrideUrlLoading, и, если не подключено, загрузить страницу ошибки, попробуйте это:
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (!isNetworkAvailable(getApplicationContext())) {
showCustomErrorPage();
return true;
}
.
.
.
}
showCustomErrorPage функция:
private void showCustomErrorPage() {
webview.loadUrl("file:///android_asset/error/error.html");
}