diff options
Diffstat (limited to 'g_cran/cran_read.py')
-rw-r--r-- | g_cran/cran_read.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/g_cran/cran_read.py b/g_cran/cran_read.py index 63c25ed..8e8f840 100644 --- a/g_cran/cran_read.py +++ b/g_cran/cran_read.py @@ -150,10 +150,17 @@ def pmsify_package_data(data,remote_repository): e_vars['rdepend']=deps e_vars['iuse']="doc" - e_vars['homepage']=remote_repository + try: + uri_regex="([a-z0-9+.-]+):(?://(?:((?:[a-z0-9-._~!$&'()*+,;=:]|%[0-9A-F]{2})*)@)?((?:[a-z0-9-._~!$&'()*+,;=]|%[0-9A-F]{2})*)(?::(\d*))?(/(?:[a-z0-9-._~!$&'()*+,;=:@/]|%[0-9A-F]{2})*)?|(/?(?:[a-z0-9-._~!$&'()*+,;=:@]|%[0-9A-F]{2})+(?:[a-z0-9-._~!$&'()*+,;=:@/]|%[0-9A-F]{2})*)?)(?:\?((?:[a-z0-9-._~!$&'()*+,;=:/?@]|%[0-9A-F]{2})*))?(?:#((?:[a-z0-9-._~!$&'()*+,;=:/?@]|%[0-9A-F]{2})*))?" + find_first_url=re.finditer(uri_regex,data['url']) + e_vars['homepage']=find_first_url.next().group(0) + except: #error processing url from data['url'] + e_vars['homepage']=remote_repository e_vars['keywords']="~x86 ~amd64" - if 'description' in data: - e_vars['description']=data['description'].strip().replace('\n',' ') + if 'title' in data: + e_vars['description']=data['title'].strip().replace('\n',' ') + elif 'description' in data: + e_vars['description']=data['description'].split('. ')[0].strip().replace('\n',' ') #first sentence else: e_vars['description']=e_vars['pn'] if 'license' in data: #fixme parse license data |